From a4bb2e741f9800d4015ada4bea6e35af23dfffa5 Mon Sep 17 00:00:00 2001
From: Spencer Smith <smiths@mcmaster.ca>
Date: Mon, 26 Mar 2018 08:42:28 -0400
Subject: [PATCH] A2 Solution

---
 Assignments/A2/A2Soln/Makefile               |   19 +
 Assignments/A2/A2Soln/doxConfig              | 2496 ++++++++++++++++++
 Assignments/A2/A2Soln/partner/CurveADT.py    |    1 +
 Assignments/A2/A2Soln/partner/Data.py        |    0
 Assignments/A2/A2Soln/partner/SeqServices.py |    0
 Assignments/A2/A2Soln/report/report.pdf      |  Bin 0 -> 158917 bytes
 Assignments/A2/A2Soln/report/report.tex      |  137 +
 Assignments/A2/A2Soln/src/A2Examples.py      |   33 +
 Assignments/A2/A2Soln/src/CurveADT.py        |   87 +
 Assignments/A2/A2Soln/src/CurveADTscipy.py   |   68 +
 Assignments/A2/A2Soln/src/CurveADTseq.py     |   51 +
 Assignments/A2/A2Soln/src/Data.py            |   74 +
 Assignments/A2/A2Soln/src/Exceptions.py      |   23 +
 Assignments/A2/A2Soln/src/Load.py            |   35 +
 Assignments/A2/A2Soln/src/Plot.py            |   39 +
 Assignments/A2/A2Soln/src/SeqServices.py     |   57 +
 Assignments/A2/A2Soln/src/glass.csv          |  440 +++
 Assignments/A2/A2Soln/src/input              |    7 +
 Assignments/A2/A2Soln/src/test_All.py        |  228 ++
 19 files changed, 3795 insertions(+)
 create mode 100644 Assignments/A2/A2Soln/Makefile
 create mode 100644 Assignments/A2/A2Soln/doxConfig
 create mode 100644 Assignments/A2/A2Soln/partner/CurveADT.py
 create mode 100644 Assignments/A2/A2Soln/partner/Data.py
 create mode 100644 Assignments/A2/A2Soln/partner/SeqServices.py
 create mode 100644 Assignments/A2/A2Soln/report/report.pdf
 create mode 100644 Assignments/A2/A2Soln/report/report.tex
 create mode 100644 Assignments/A2/A2Soln/src/A2Examples.py
 create mode 100644 Assignments/A2/A2Soln/src/CurveADT.py
 create mode 100644 Assignments/A2/A2Soln/src/CurveADTscipy.py
 create mode 100644 Assignments/A2/A2Soln/src/CurveADTseq.py
 create mode 100644 Assignments/A2/A2Soln/src/Data.py
 create mode 100644 Assignments/A2/A2Soln/src/Exceptions.py
 create mode 100644 Assignments/A2/A2Soln/src/Load.py
 create mode 100644 Assignments/A2/A2Soln/src/Plot.py
 create mode 100644 Assignments/A2/A2Soln/src/SeqServices.py
 create mode 100644 Assignments/A2/A2Soln/src/glass.csv
 create mode 100644 Assignments/A2/A2Soln/src/input
 create mode 100644 Assignments/A2/A2Soln/src/test_All.py

diff --git a/Assignments/A2/A2Soln/Makefile b/Assignments/A2/A2Soln/Makefile
new file mode 100644
index 00000000..04778e59
--- /dev/null
+++ b/Assignments/A2/A2Soln/Makefile
@@ -0,0 +1,19 @@
+PY = pytest
+PYFLAGS = --cov
+DOXY = doxygen
+DOXYCFG = doxConfig
+
+RMDIR = rm -rf
+
+.PHONY: test doc clean
+
+test:
+	$(PY) $(PYFLAGS) src
+
+doc:
+	$(DOXY) $(DOXYCFG)
+	cd latex && $(MAKE)
+
+clean:
+	@- $(RMDIR) html
+	@- $(RMDIR) latex
diff --git a/Assignments/A2/A2Soln/doxConfig b/Assignments/A2/A2Soln/doxConfig
new file mode 100644
index 00000000..a2ac78f2
--- /dev/null
+++ b/Assignments/A2/A2Soln/doxConfig
@@ -0,0 +1,2496 @@
+# Doxyfile 1.8.13
+
+# 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 config 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 http://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           = "Assignment 2"
+
+# 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          =
+
+# 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       =
+
+# 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           = YES
+
+# 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 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
+
+# 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:\n"
+# 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:". You can put \n's in the value part of an alias to insert
+# newlines.
+
+ALIASES                =
+
+# This tag can be used to specify a number of word-keyword mappings (TCL only).
+# A mapping has the form "name=value". For example adding "class=itcl::class"
+# will allow you to use the command class in the itcl::class meaning.
+
+TCL_SUBST              =
+
+# 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
+
+# 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,
+# C#, C, C++, D, PHP, Objective-C, Python, 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), VHDL. 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.
+
+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 http://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: 0.
+# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
+
+TOC_INCLUDE_HEADINGS   = 0
+
+# 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:
+# http://www.riverbankcomputing.co.uk/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
+
+#---------------------------------------------------------------------------
+# 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            = NO
+
+# 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_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 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
+# (class|struct|union) 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
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES, upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# 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_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.
+#
+# 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 http://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 not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = 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 or incomplete
+# parameter documentation, but not about the absence of documentation.
+# 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.
+# 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).
+
+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/CurveADT.py \
+                         src/Data.py \
+                         src/Load.py \
+                         src/Plot.py \
+                         src/SeqServices.py
+
+# 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: http://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.
+#
+# 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++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
+# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf.
+
+FILE_PATTERNS          = *.c \
+                         *.cc \
+                         *.cxx \
+                         *.cpp \
+                         *.c++ \
+                         *.java \
+                         *.ii \
+                         *.ixx \
+                         *.ipp \
+                         *.i++ \
+                         *.inl \
+                         *.idl \
+                         *.ddl \
+                         *.odl \
+                         *.h \
+                         *.hh \
+                         *.hxx \
+                         *.hpp \
+                         *.h++ \
+                         *.cs \
+                         *.d \
+                         *.php \
+                         *.php4 \
+                         *.php5 \
+                         *.phtml \
+                         *.inc \
+                         *.m \
+                         *.markdown \
+                         *.md \
+                         *.mm \
+                         *.dox \
+                         *.py \
+                         *.pyw \
+                         *.f90 \
+                         *.f95 \
+                         *.f03 \
+                         *.f08 \
+                         *.f \
+                         *.for \
+                         *.tcl \
+                         *.vhd \
+                         *.vhdl \
+                         *.ucf \
+                         *.qsf
+
+# 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              = NO
+
+# 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                =
+
+# 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,
+# AClass::ANamespace, 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 =
+
+#---------------------------------------------------------------------------
+# 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         = NO
+
+# 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
+# function 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 http://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 config 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 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          =
+
+#---------------------------------------------------------------------------
+# 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
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+COLS_IN_ALPHA_INDEX    = 5
+
+# 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 colorwheel, see
+# http://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 grayscales 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_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: http://developer.apple.com/tools/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 http://developer.apple.com/tools/creatingdocsetswithdoxygen.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 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
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# 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 master .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: http://qt-project.org/doc/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: http://qt-project.org/doc/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: http://qt-project.org/doc/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: http://qt-project.org/doc/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:
+# http://qt-project.org/doc/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 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. 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      = 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
+
+# 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_TRANPARENT 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
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# http://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
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) 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 http://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# 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/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: http://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: http://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 enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = 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 personal 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. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a personal 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.
+#
+# 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 pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
+# higher quality PDF documentation.
+# 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. This option is also used
+# when generating formulas in HTML.
+# 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
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# http://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
+
+#---------------------------------------------------------------------------
+# 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 config
+# 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 config 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    =
+
+# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
+# with syntax highlighting in the RTF output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_SOURCE_CODE        = NO
+
+#---------------------------------------------------------------------------
+# 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
+
+#---------------------------------------------------------------------------
+# 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
+
+# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the
+# program listings (including syntax highlighting and cross-referencing
+# information) to the DOCBOOK output. Note that enabling this will significantly
+# increase the size of the DOCBOOK output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_PROGRAMLISTING = NO
+
+#---------------------------------------------------------------------------
+# 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.sf.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 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
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of 'which perl').
+# The default file (with absolute path) is: /usr/bin/perl.
+
+PERL_PATH              = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
+CLASS_DIAGRAMS         = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see:
+# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH            =
+
+# 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 then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to 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 HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# 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 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. 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.
+# 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 dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_CLEANUP            = YES
diff --git a/Assignments/A2/A2Soln/partner/CurveADT.py b/Assignments/A2/A2Soln/partner/CurveADT.py
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/Assignments/A2/A2Soln/partner/CurveADT.py
@@ -0,0 +1 @@
+
diff --git a/Assignments/A2/A2Soln/partner/Data.py b/Assignments/A2/A2Soln/partner/Data.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Assignments/A2/A2Soln/partner/SeqServices.py b/Assignments/A2/A2Soln/partner/SeqServices.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Assignments/A2/A2Soln/report/report.pdf b/Assignments/A2/A2Soln/report/report.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2a51abb916e7fdba4bfbd0e929c78623c55635c0
GIT binary patch
literal 158917
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
ArT_o{

literal 0
HcmV?d00001

diff --git a/Assignments/A2/A2Soln/report/report.tex b/Assignments/A2/A2Soln/report/report.tex
new file mode 100644
index 00000000..5d2fb5d5
--- /dev/null
+++ b/Assignments/A2/A2Soln/report/report.tex
@@ -0,0 +1,137 @@
+\documentclass[12pt]{article}
+
+\usepackage{graphicx}
+\usepackage{paralist}
+\usepackage{listings}
+\usepackage{booktabs}
+
+\oddsidemargin 0mm
+\evensidemargin 0mm
+\textwidth 160mm
+\textheight 200mm
+
+\pagestyle {plain}
+\pagenumbering{arabic}
+
+\newcounter{stepnum}
+
+\title{Assignment 2 Solution}
+\author{Henry M. 000000000}
+\date{\today}
+
+\begin {document}
+
+\maketitle
+
+Introductory blurb.
+
+\section{Testing of the Original Program}
+
+Description of approach to testing.  Rationale for test case selection.  Summary
+of results.  Any problems uncovered through testing.
+
+\section{Results of Testing Partner's Code}
+
+Summary of results.
+
+\section{Discussion of Test Results}
+
+\subsection{Problems with Original Code}
+
+\subsection{Problems with Partner's Code}
+
+\subsection{Problems with Assignment Specification}
+
+\section{Answers}
+
+\begin{enumerate}
+
+\item What is the mathematical specification of the \texttt{SeqServices} access
+  program isInBounds(X, x) if the assumption that X is ascending is removed?
+
+output: $:= \exists\,( i, j \,|\, i, j \in [0..|X| - 1] : X_i \leq x \leq X_j )$
+\\exception: none
+
+\item How would you modify \texttt{CurveADT.py} to support cubic interpolation?
+\begin{enumerate}
+  \item modify MAX\_ORDER constant in curveADT from 2 to 3
+  \item Add an access program, interpCubic that calls scipy with interp1d with kind=3
+\end{enumerate}
+
+
+\item What is your critique of the CurveADT module's interface.  In particular,
+  comment on whether the exported access programs provide an interface that is
+  consistent, essential, general, minimal and opaque.
+
+- exceptions should be in SeqServices
+
+\item What is your critique of the Data abstract object's interface.  In
+  particular, comment on whether the exported access programs provide an
+  interface that is consistent, essential, general, minimal and opaque.
+
+- no size method
+
+\end{enumerate}
+
+\newpage
+
+\lstset{language=Python, basicstyle=\tiny, breaklines=true, showspaces=false,
+  showstringspaces=false, breakatwhitespace=true}
+%\lstset{language=C,linewidth=.94\textwidth,xleftmargin=1.1cm}
+
+\def\thesection{\Alph{section}}
+
+\section{Code for CurveADT.py}
+
+\noindent \lstinputlisting{../src/CurveADT.py}
+
+\newpage
+
+\section{Code for Data.py}
+
+\noindent \lstinputlisting{../src/Data.py}
+
+\newpage
+
+\section{Code for SeqServices.py}
+
+\noindent \lstinputlisting{../src/SeqServices.py}
+
+\newpage
+
+\section{Code for Plot.py}
+
+\noindent \lstinputlisting{../src/Plot.py}
+
+\newpage
+
+\section{Code for Load.py}
+
+\noindent \lstinputlisting{../src/Load.py}
+
+\newpage
+
+\section{Code for Partner's CurveADT.py}
+
+\noindent \lstinputlisting{../partner/CurveADT.py}
+
+\newpage
+
+\section{Code for Partner's Data.py}
+
+\noindent \lstinputlisting{../partner/Data.py}
+
+\newpage
+
+\section{Code for Partner's SeqServices.py}
+
+\noindent \lstinputlisting{../partner/SeqServices.py}
+
+\newpage
+
+\section{Makefile}
+
+\lstset{language=make}
+\noindent \lstinputlisting{../Makefile}
+
+\end {document}
diff --git a/Assignments/A2/A2Soln/src/A2Examples.py b/Assignments/A2/A2Soln/src/A2Examples.py
new file mode 100644
index 00000000..fb5f217e
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/A2Examples.py
@@ -0,0 +1,33 @@
+#from CurveADT import *
+from CurveADTscipy import *
+from Data import *
+from Load import *
+from Plot import *
+
+X = range(11)
+Y = list(map(lambda x: x**2, X))
+
+c1 = CurveT(X, Y, 1)
+
+print(c1.eval(6.5))
+
+PlotCurve(c1, 50)
+
+c2 = CurveT(X, Y, 2)
+
+print(c2.eval(6.5))
+
+PlotCurve(c2, 5)
+#PlotCurve(c2, 50) will look strange because of edge effects
+#scipy and lambda version for A2 have same behaviour
+
+Load('glass.csv')
+
+c3 = Data.getC(9)
+PlotCurve(c3, 50)
+print(Data.eval(18, 34))
+
+c4 = Data.slice(18, 1)
+PlotCurve(c4, 50)
+print(c4.eval(34))
+
diff --git a/Assignments/A2/A2Soln/src/CurveADT.py b/Assignments/A2/A2Soln/src/CurveADT.py
new file mode 100644
index 00000000..99345858
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/CurveADT.py
@@ -0,0 +1,87 @@
+## @file CurveT.py
+#  @author Steven Palmer and Henry Madej
+#  @brief CurveT
+#  @date 20/02/2018
+
+from Exceptions import *
+from SeqServices import *
+
+
+
+
+## @brief An abstract data type that represents a Curve
+class CurveT:
+
+  MAX_ORDER = 2
+  DX = 1E-3
+
+  ## @brief CurveT constructor
+  #  @details takes two lists of of x's and y's where the values are sorted in 
+  #  ascending order, and order i of the function representing the curve
+  #  @param X list of x values sorted in ascending order
+  #  @param Y list of corresponding y values to the the x's in the X list
+  #  @param i order of the function represented by the data points (x,y) pairs
+  def __init__(self, X, Y, i):
+    if not isAscending(X):
+      raise IndepVarNotAscending
+    if i < 1 or i > CurveT.MAX_ORDER:
+      raise InvalidInterpOrder
+    if len(X) != len(Y):
+      raise SeqSizeMismatch
+      
+    self.__minx = X[0] 
+    self.__maxx = X[-1]
+    self.__o = i
+    
+    if self.__o == 1:
+      self.__f = lambda v: interpLin(X[index(X, v)], Y[index(X, v)], X[index(X, v) + 1], Y[index(X, v) + 1], v)  
+    elif self.__o == 2:
+      self.__f = lambda v: interpQuad(X[index(X, v) - 1], Y[index(X, v) - 1], X[index(X, v)], Y[index(X, v)], X[index(X, v) + 1], Y[index(X, v) + 1], v)
+  
+  ## @brief minD returns the minimal x value
+  #  @return value representing the minimal x value
+  def minD(self):
+    return self.__minx
+  
+  ## @brief maxD returns the maximal x value
+  #  @return value representing the maximal x value
+  def maxD(self):
+    return self.__maxx
+    
+
+  ## @brief order returns the order of the function represented by the curve
+  #  @return the value of the order of the curve
+  def order(self):
+    return self.__o
+  
+
+  ## @brief eval evaluates the function at a given x value
+  #  @details if x is within the range of x values for the curve it will return
+  #           a y value for the curve
+  #  @param x value of x to evaluate the curve at
+  #  @exception OutOfDomain - if x value is not within the range of the curve's 
+  #             x values
+  #  @return the value of the curve at x
+  def eval(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x)
+
+
+  ## @brief approximates the first derivate of the curve
+  #  @details uses forward divided difference
+  #  @param x value of x for the first derivate to be evaluated at
+  #  @return the value of the first derivate at evaluated x
+  def dfdx(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + self.DX) - self.__f(x) / self.DX
+
+  ## @brief approximates the second derivate of the curve
+  #  @details uses forward divided difference
+  #  @param x value of x for the second derivate to be evaluated at
+  #  @return the value of the second derivate at evaluated x
+  def d2fdx2(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + 2*self.DX) - 2*self.__f(x + self.DX) + self.__f(x) / self.DX**2
\ No newline at end of file
diff --git a/Assignments/A2/A2Soln/src/CurveADTscipy.py b/Assignments/A2/A2Soln/src/CurveADTscipy.py
new file mode 100644
index 00000000..2cb2e0a5
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/CurveADTscipy.py
@@ -0,0 +1,68 @@
+## @file CurveT.py
+#  @author Steven Palmer and Henry Madej
+#  @brief CurveT
+#  @date 20/02/2018
+
+from Exceptions import *
+from SeqServices import *
+from scipy.interpolate import interp1d
+
+
+
+## @brief An abstract data type that represents a Curve
+class CurveT:
+
+  MAX_ORDER = 2
+
+  ## @brief 
+  #  @details 
+  def __init__(self, X, Y, i):
+    if not isAscending(X):
+      raise IndepVarNotAscending
+    if i < 1 or i > CurveT.MAX_ORDER:
+      raise InvalidInterpOrder
+      
+    self.__minx = X[0] 
+    self.__maxx = X[-1]
+    self.__o = i
+    
+    if self.__o == 1:
+      self.__f = interp1d(X, Y, 'linear')
+    elif self.__o == 2:
+      self.__f = interp1d(X, Y, 'quadratic')
+  
+  ## @brief 
+  #  @details 
+  def minD(self):
+    return self.__minx
+  
+  ## @brief 
+  #  @details 
+  def maxD(self):
+    return self.__maxx
+    
+  ## @brief 
+  #  @details 
+  def order(self):
+    return self.__o
+  
+  ## @brief 
+  #  @details 
+  def eval(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return float(self.__f(x))
+
+  ## @brief 
+  #  @details 
+  def dfdx(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + DX) - self.__f(x) / DX
+
+  ## @brief 
+  #  @details 
+  def d2fdx2(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + 2*DX) - 2*self.__f(x + DX) + self.__f(x) / DX**2
\ No newline at end of file
diff --git a/Assignments/A2/A2Soln/src/CurveADTseq.py b/Assignments/A2/A2Soln/src/CurveADTseq.py
new file mode 100644
index 00000000..854b07dd
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/CurveADTseq.py
@@ -0,0 +1,51 @@
+from Exceptions import *
+from SeqServices import *
+
+class CurveT:
+
+  MAX_ORDER = 2
+  DX = 1E-3
+
+  def __init__(self, X, Y, i):
+    if not isAscending(X):
+      raise IndepVarNotAscending
+    if i < 1 or i > CurveT.MAX_ORDER:
+      raise InvalidInterpOrder
+      
+    self.__minx = X[0] 
+    self.__maxx = X[-1]
+    self.__o = i
+    
+    self.X = X
+    self.Y = Y
+  
+  
+  def minD(self):
+    return self.__minx
+  
+  
+  def maxD(self):
+    return self.__maxx
+    
+  
+  def order(self):
+    return self.__o
+  
+  
+  def eval(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    if self.__o == 1:
+      return (lambda v: interpLin(self.X[index(self.X, v)], self.Y[index(self.X, v)], self.X[index(self.X, v) + 1], self.Y[index(self.X, v) + 1], v))(x)
+    elif self.__o == 2:
+      return (lambda v: interpQuad(self.X[index(self.X, v) - 1], self.Y[index(self.X, v) - 1], self.X[index(X, v)], self.Y[index(self.X, v)], self.X[index(self.X, v) + 1], self.Y[index(self.X, v) + 1], v))(x)
+
+  def dfdx(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + DX) - self.__f(x) / DX
+
+  def d2fdx2(self, x):
+    if x < self.__minx or x > self.__maxx:
+      raise OutOfDomain
+    return self.__f(x + 2*DX) - 2*self.__f(x + DX) + self.__f(x) / DX**2
diff --git a/Assignments/A2/A2Soln/src/Data.py b/Assignments/A2/A2Soln/src/Data.py
new file mode 100644
index 00000000..9ae1620c
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/Data.py
@@ -0,0 +1,74 @@
+## @file Data.py
+#  @author Steven Palmer and Henry Madej
+#  @brief Data
+#  @date 20/02/2018
+
+from CurveADT import *
+import SeqServices
+from Exceptions import *
+
+
+## @brief An abstract data type for storing data
+class Data:
+  
+  MAX_SIZE = 10
+  
+  S = []
+  Z = []
+  
+  ## @brief init initial data structure
+  @staticmethod
+  def init():
+    Data.S = []
+    Data.Z = []
+    
+  ## @brief add adds a pair to the data structure
+  #  @exception throws Full exception is structure is full
+  #  @exception throws IndepVarNotAscending if z is less than or equal the last
+  #             value in the structure 
+  #  @param s dependant variable value added to the structure
+  #  @param z independent variable value aded to the structure
+  @staticmethod  
+  def add(s, z):
+    if len(Data.S) == Data.MAX_SIZE:
+      raise Full
+      
+    if Data.Z:
+      if z <= Data.Z[-1]:
+        raise IndepVarNotAscending
+    
+    Data.S.append(s)
+    Data.Z.append(z)
+
+  ## @brief getC gets value of the dependant variable at index i
+  #  @param i index of dependant variable value
+  #  @return value of dependant variable at index i
+  @staticmethod
+  def getC(i):
+    if not (0 <= i < len(Data.S)):
+      raise InvalidIndex
+    
+    return Data.S[i]
+
+  ## @brief eval evaluates the a curve at a particular value of x
+  #  @details  Uses linear interplation to find the value of the curve at x
+  #  @param x the value to evaluate the curve at
+  #  @param z value adjacent to the x value
+  #  @return value of the curve at the specified value of x
+  @staticmethod
+  def eval(x, z):
+    if not isInBounds(Data.Z, z):
+      raise OutOfDomain 
+    
+    j = SeqServices.index(Data.Z, z)
+    return interpLin(Data.Z[j], Data.S[j].eval(x), Data.Z[j+1], Data.S[j+1].eval(x), z)
+    
+  ## @brief slice slices a curve returning a subset of the original curve
+  #  @param x the x to slice at
+  #  @param i the order of the curve that is being sliced
+  #  @return CurveT
+  @staticmethod
+  def slice(x, i):
+    Y = [s.eval(x) for s in Data.S]
+    
+    return CurveT(Data.Z, Y, i)
diff --git a/Assignments/A2/A2Soln/src/Exceptions.py b/Assignments/A2/A2Soln/src/Exceptions.py
new file mode 100644
index 00000000..58ae06db
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/Exceptions.py
@@ -0,0 +1,23 @@
+## @brief exception when independent variable is not ascending 
+class IndepVarNotAscending(Exception):
+  pass
+
+## @brief exception when the order of interplation is incorrect
+class InvalidInterpOrder(Exception):
+  pass
+
+## @brief exception when given value is not within bounds
+class OutOfDomain(Exception):
+  pass
+
+## @brief exception when data structure is full
+class Full(Exception):
+  pass
+  
+## @brief exception when two sequences are of different size
+class SeqSizeMismatch(Exception):
+  pass
+
+## @brief exception when given index is not in bounds
+class InvalidIndex(Exception):
+  pass
diff --git a/Assignments/A2/A2Soln/src/Load.py b/Assignments/A2/A2Soln/src/Load.py
new file mode 100644
index 00000000..666f6b63
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/Load.py
@@ -0,0 +1,35 @@
+## @file Load.py
+#  @author Steven Palmer and Henry Madej
+#  @brief function for retrieving data from file
+#  @date 20/02/2018
+
+from Data import *
+from CurveADT import *
+
+## @brief Load reads in data from a file, storing it in Data 
+#  @param s the name of the file to be read
+def Load(s):
+  with open(s, 'r') as infile:
+    contents = infile.readlines()
+    
+  contents = [x.strip().split(',') for x in contents]
+  
+  zs = contents[0]
+  os = contents[1]
+  pts = contents[2:]
+  
+  Data.init()
+  
+  for i in range(len(zs)):
+    X = []
+    Y = []
+    for j in range(0, len(pts)):
+      if pts[j][i*2] == '':
+        break
+      X.append(float(pts[j][i*2]))
+      Y.append(float(pts[j][i*2+1]))
+      
+    Data.add(CurveT(X,Y,int(os[i])), float(zs[i]))
+  
+  
+   
diff --git a/Assignments/A2/A2Soln/src/Plot.py b/Assignments/A2/A2Soln/src/Plot.py
new file mode 100644
index 00000000..d5bb1c60
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/Plot.py
@@ -0,0 +1,39 @@
+## @file Plot.py
+#  @author Steven Palmer and Henry Madej
+#  @brief Plotting functions
+#  @date 20/02/2018
+
+from matplotlib.pyplot import *
+from Exceptions import *
+from CurveADT import *
+
+## @brief PlotSeq plots a sequence of (x, y) pairs
+#  @param X corresponding x values of the sequence
+#  @param Y corresponding y values of the sequence
+def PlotSeq(X, Y):
+  if len(X) != len(Y):
+    raise SeqSizeMismatch
+    
+  figure(dpi=100)
+  plot(X, Y)
+
+  show()
+  
+
+## @brief PlotCurve plots a curve
+#  @param c the curve to be plotted
+#  @param n number of equally spaced points
+def PlotCurve(c, n):
+  d = (c.maxD() - c.minD())/(n+1)
+  
+  curX = c.minD()
+  
+  X = []
+  Y = []
+    
+  for i in range(n):
+    curX = curX + d
+    X.append(curX)
+    Y.append(c.eval(curX))
+    
+  PlotSeq(X, Y)
diff --git a/Assignments/A2/A2Soln/src/SeqServices.py b/Assignments/A2/A2Soln/src/SeqServices.py
new file mode 100644
index 00000000..17dac9b8
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/SeqServices.py
@@ -0,0 +1,57 @@
+## @file SeqServices.py
+#  @author Steven Palmer and Henry Madej
+#  @brief Provides the services for working with sequences
+#  @date 20/02/2018
+
+
+## @brief isAscending checks if a sequence is in ascending order
+#  @param X sequence to be checked for ascending order
+#  @return boolean False if not in ascending order True otherwise
+def isAscending(X):
+  for i in range(0, len(X) - 1):
+    if X[i + 1] < X[i]:
+      return False
+  
+  return True
+  
+## @brief isInBounds checks if value (x) is within bounds of sequence (X)
+#  @param X sequence to be checked against
+#  @param x value to be checked for in bounds 
+#  @return boolean False if not in bounds True otherwise
+def isInBounds(X, x):
+  return X[0] <= x and x <= X[len(X) - 1]
+
+## @brief interpLin given two points interpolates the y value for a given x
+#  @details linear interpolation
+#  @param x1 x value of the first point
+#  @param y1 y value of the first point
+#  @param x2 x value of the second point
+#  @param y2 y value of the second point
+#  @param x value for which we want to interpolate a y value
+#  @return y value for given x value
+def interpLin(x1, y1, x2, y2, x):
+  return (y2 - y1) / (x2 - x1) * (x - x1) + y1
+  
+## @brief interpQuad given three points interpolates the y value for given x
+#  @details quadratic interpolation
+#  @param x0 x value of the first point
+#  @param y0 y value of the first point
+#  @param x1 x value of the second point
+#  @param y1 y value of the second point
+#  @param x2 x value of the third point
+#  @param y2 y value of the third point
+#  @param x value for which we want to interpolate a y value
+#  @return y value for given x value
+def interpQuad(x0, y0, x1, y1, x2, y2, x):
+  return y1 + (y2 - y0) / (x2 - x0) * (x - x1) + (y2 - 2*y1 + y0) / (2*(x2 - x1)**2) * (x - x1)**2
+  
+## @brief index given a sequence and value, returns index of that value if in 
+#  sequence
+#  @details Seq[i] <= x <= Seq[i+1]
+#  @param X sequence to be searched
+#  @param x value to look for
+#  @return index of closest value to given x in sequence
+def index(X, x):
+  for i in range(0, len(X) - 1):
+    if X[i] <= x and x < X[i+1]:
+      return i
diff --git a/Assignments/A2/A2Soln/src/glass.csv b/Assignments/A2/A2Soln/src/glass.csv
new file mode 100644
index 00000000..33dcc575
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/glass.csv
@@ -0,0 +1,440 @@
+4.5,9.1,14,18,23,27,32,36,41,45
+1,1,1,1,1,1,1,1,1,1
+6.143397364,4.411877631,6.128184215,7.627031257,6.34463941,9.952136904,7.199850837,9.992650492,7.970252895,9.923747653,9.112111846,9.922695591,9.815736637,9.975357212,10.67908231,9.974691345,11.70510613,9.988805921,12.89348645,9.973203096
+6.15864828,4.388319476,6.15864828,7.575020192,6.34463941,10.00554409,7.217724387,9.92452703,8.009874141,9.806380586,9.157409434,9.86969188,9.864532042,9.869110571,10.73216953,9.894895413,11.73416392,9.920708668,12.95758178,9.866979399
+6.189263785,4.364878545,6.189263785,7.494339327,6.376179503,9.898975927,7.253604708,9.871513535,8.009874141,9.870738322,9.202932202,9.764570671,9.864532042,9.9220722,10.78552065,9.815737836,11.7924961,9.86771557,12.95758178,9.919929591
+6.189263785,4.341579876,6.189263785,7.534556975,6.407876387,9.793542816,7.271611701,9.833410793,8.04969235,9.765605967,9.202932202,9.816971296,9.924500406,9.816384527,10.83913698,9.763305457,11.85111825,9.76261541,13.02199574,9.814273304
+6.204628563,4.318397091,6.220031484,7.434385814,6.407876387,9.846098918,7.289663395,9.766372924,8.089708501,9.661593368,9.24868127,9.712411609,9.980983057,9.774400185,10.89301986,9.659317361,11.85111825,9.815005543,13.0867299,9.761848748
+6.235472643,4.318380134,6.250952134,7.37491192,6.43973084,9.689232664,7.307759903,9.728676011,8.089708501,9.713441376,9.294657763,9.608965579,9.987584432,9.726269624,10.89301986,9.711153155,11.92316345,9.71045832,13.15178588,9.657876167
+6.250952134,4.295321229,6.282026495,7.29636239,6.43973084,9.741228995,7.325901336,9.662352156,8.129923578,9.609984377,9.294657763,9.660531165,10.0123785,9.659962175,10.94717059,9.607720528,11.96923827,9.607041477,13.15178588,9.709704227
+6.250952134,4.27239384,6.282026495,7.335517614,6.471743646,9.611720356,7.36231942,9.610739112,8.150106023,9.572891103,9.340862812,9.557637708,10.04276596,9.604377714,11.00159051,9.556399307,11.96923827,9.658596737,13.21716525,9.606287032
+6.282026495,4.249572145,6.313255331,7.237992661,6.503915592,9.534828134,7.380596296,9.573642925,8.17033857,9.507629289,9.387297553,9.45584016,10.08713062,9.557056015,11.02890184,9.519512864,12.02873903,9.54436558,13.28286964,9.529438276
+6.313255331,4.226872357,6.34463941,7.18008988,6.53624747,9.433273529,7.398918544,9.508375986,8.21095447,9.456842723,9.387297553,9.506584013,10.11217181,9.506024091,11.05628096,9.45461495,12.08853558,9.504680412,13.34890065,9.453204298
+6.313255331,4.204310331,6.376179503,7.122650312,6.53624747,9.483896281,7.417286276,9.471674907,8.231338073,9.420340555,9.433963127,9.405330234,10.16244083,9.455246099,11.11124329,9.378979546,12.14862939,9.403446908,13.4152599,9.402708451
+6.34463941,4.181852316,6.407876387,7.065670252,6.568740074,9.332800573,7.435699607,9.40710312,8.251772278,9.356118734,9.480860682,9.355090114,10.18766898,9.418750094,11.16647884,9.303949213,12.14862939,9.453909597,13.48194905,9.302561041
+6.376179503,4.159514263,6.43973084,7.009146023,6.568740074,9.382884146,7.472663513,9.356853531,8.292792996,9.256467547,9.504396813,9.318980699,10.21295975,9.354539115,11.22198897,9.254250638,12.20902193,9.353216849,13.48194905,9.352482337
+6.392008297,4.137303656,6.471743646,6.934492233,6.601394203,9.282947883,7.491214317,9.320737309,8.292792996,9.306141486,9.527991372,9.255449883,10.26372981,9.304570305,11.27777505,9.155684438,12.2697147,9.253596569,13.54896971,9.252869881
+6.407876387,4.115211647,6.471743646,6.971705516,6.634210661,9.184076032,7.509811173,9.257194518,8.334017635,9.207022602,9.575356355,9.206010374,10.2892094,9.268655889,11.27777505,9.204817535,12.2697147,9.303255101,13.61632354,9.203444153
+6.43973084,4.093229567,6.503915592,6.879017407,6.634210661,9.233361489,7.528454195,9.221462966,8.375447207,9.108959424,9.622956796,9.107957978,10.34035851,9.205450082,11.33383846,9.106777843,12.33070917,9.20416696,13.68401219,9.154282442
+6.4557174,4.071372901,6.53624747,6.82398637,6.667190254,9.110604897,7.547143499,9.158596963,8.375447207,9.157841775,9.622956796,9.156834955,10.36602833,9.156295632,11.39018056,9.033925081,12.39200686,9.155001388,13.7179826,9.118948117
+6.471743646,4.049632944,6.568740074,6.769395574,6.700333792,9.037721518,7.565879198,9.123245985,8.417082731,9.036089209,9.670793865,9.059306322,10.41755932,9.058772743,11.44680275,8.961655129,12.45360926,9.057492284,13.75203734,9.056780995
+6.503915592,4.028001163,6.601394203,6.715241494,6.733642093,8.941461552,7.603490246,9.061031773,8.458925231,8.963801945,9.718868739,8.962816457,10.41755932,9.107385772,11.50370641,8.913784973,12.45360926,9.106098441,13.82040065,9.008402709
+6.52006149,4.006492798,6.634210661,6.661520639,6.733642093,8.989445041,7.622365826,9.012648476,8.500975736,8.868329289,9.718868739,9.010914546,10.46934647,9.010383818,11.53226423,8.879378937,12.5155179,9.009110198,13.8891038,8.960282844
+6.53624747,3.985099281,6.667190254,6.590569376,6.767115973,8.846226841,7.641288264,8.97786084,8.500975736,8.915920321,9.767182601,8.914940098,10.52139106,8.96225337,11.56089295,8.818845043,12.5777343,8.960986553,13.95814849,8.864847669
+6.568740074,3.963812218,6.667190254,6.62593703,6.767115973,8.893699263,7.660257677,8.91665556,8.54323528,8.820957648,9.815736637,8.867319478,10.54751029,8.927660252,11.61836377,8.771737731,12.64025998,8.865543884,13.95814849,8.912420018
+6.568740074,3.942654344,6.700333792,6.537845878,6.800756257,8.775458445,7.679274181,8.882238444,8.585704902,8.727006414,9.840104093,8.833092793,10.57369437,8.866797208,11.67612029,8.678310734,12.64025998,8.913119969,14.0275364,8.817494627
+6.601394203,3.921594007,6.733642093,6.485544159,6.834563771,8.705256184,7.717448931,8.821667736,8.585704902,8.773839051,9.864532042,8.772874449,10.62625769,8.819433751,11.67612029,8.724882051,12.70309649,8.818187122,14.09726926,8.770394528
+6.634210661,3.900646167,6.767115973,6.433660846,6.868539347,8.612537276,7.736607412,8.774562573,8.628385647,8.680389673,9.913570016,8.70269286,10.65263725,8.785391898,11.73416392,8.631954109,12.76624537,8.724265397,14.16734876,8.676981837
+6.667190254,3.879810224,6.800756257,6.382192591,6.868539347,8.658755626,7.755813453,8.740693917,8.671278563,8.587935616,9.962851764,8.633072712,10.67908231,8.725498748,11.7924961,8.585845106,12.76624537,8.771083324,14.16734876,8.723546022
+6.667190254,3.859100732,6.834563771,6.314216426,6.902683821,8.543638359,7.794368691,8.681088445,8.671278563,8.634021943,10.0123785,8.586957733,10.73216953,8.678890061,11.85111825,8.494398034,12.82970816,8.677663297,14.23777664,8.630632311
+6.700333792,3.838486711,6.834563771,6.348101059,6.936998031,8.475290622,7.813718124,8.634733935,8.714384707,8.542061745,10.06215144,8.495498812,10.78552065,8.586451976,11.85111825,8.539982401,12.89348645,8.631310131,14.30855463,8.584530368
+6.716967296,3.817990298,6.868539347,6.280488,6.971482822,8.385021057,7.833115592,8.601405,8.757705137,8.451081006,10.06215144,8.541089086,10.78552065,8.632530341,11.91003183,8.449023809,12.95758178,8.585204567,14.37968446,8.538674686
+6.750358284,3.797595875,6.902683821,6.213595082,6.971482822,8.430018462,7.852561214,8.542766154,8.757705137,8.496432916,10.11217181,8.450118707,10.83913698,8.540586029,11.96923827,8.35903401,12.98974883,8.552066808,14.41538187,8.505716526
+6.767115973,3.777317808,6.902683821,6.24693974,7.006139042,8.295712944,7.891597398,8.497133562,8.801240919,8.405938166,10.16244083,8.404981007,10.89301986,8.494965084,11.96923827,8.403891958,13.02199574,8.493764318,14.45116789,8.447730023
+6.800756257,3.757140643,6.936998031,6.163887317,7.006139042,8.340231087,7.911188201,8.464335746,8.844993123,8.316407268,10.18766898,8.372538887,10.92006166,8.462175637,12.02873903,8.314382854,13.0867299,8.448393478,14.52300668,8.402605083
+6.834563771,3.737071258,6.971482822,6.114577207,7.040967543,8.251400028,7.930827637,8.40663135,8.844993123,8.361036464,10.21295975,8.315460303,10.94717059,8.404485967,12.08853558,8.225827103,13.15178588,8.403264994,14.59520258,8.357721185
+6.851530499,3.717116375,7.006139042,6.04945139,7.075969182,8.185390151,7.950515828,8.37418286,8.888962826,8.249877343,10.26372981,8.271041903,11.00159051,8.359592022,12.08853558,8.269970209,13.18443504,8.370829498,14.66775738,8.313077042
+6.868539347,3.697268045,7.006139042,6.081915187,7.111144818,8.119908343,7.970252895,8.317093068,8.933151108,8.183879647,10.31475225,8.226860772,11.05628096,8.270554753,12.14862939,8.181887494,13.21716525,8.313762567,14.70416993,8.280989659
+6.902683821,3.677518479,7.040967543,6.01713725,7.146495317,8.033423922,8.009874141,8.272665947,8.977559057,8.140164107,10.34035851,8.195106173,11.05628096,8.314937886,12.20902193,8.116433705,13.28286964,8.269353237,14.74067287,8.224535199
+6.919819656,3.657881591,7.075969182,5.984995721,7.146495317,8.076534516,8.029758564,8.240734546,9.022187763,8.053463944,10.36602833,8.139237211,11.11124329,8.226376223,12.2697147,8.073078439,13.34890065,8.203199737,14.81395082,8.18060249
+6.954219051,3.638342414,7.093535196,5.953037569,7.182021549,7.969157819,8.04969235,8.184554519,9.022187763,8.096682081,10.41755932,8.095760136,11.16647884,8.138757823,12.33070917,8.008495106,13.4152599,8.137575454,14.88759305,8.136904456
+6.971482822,3.618914714,7.111144818,5.921250065,7.217724387,7.905405834,8.089708501,8.140835374,9.067038325,8.010445041,10.46934647,8.009532916,11.16647884,8.182433681,12.39200686,7.965716411,13.48194905,8.094107255,14.96160136,8.071810525
+7.006139042,3.599583686,7.146495317,5.889620733,7.253604708,7.842163855,8.109791112,8.109412821,9.112111846,7.925126505,10.46934647,8.052515301,11.22198897,8.095283309,12.45360926,7.880874276,13.54896971,8.05087125,15.03597759,8.007237335
+7.023531704,3.580362947,7.164236412,5.858171856,7.289663395,7.758637666,8.129923578,8.054128062,9.112111846,7.967655931,10.52139106,7.966748678,11.27777505,8.052041021,12.45360926,7.923166226,13.58260487,8.019795947,15.11072354,7.964465359
+7.040967543,3.561244841,7.182021549,5.826890907,7.289663395,7.800273646,8.17033857,8.011105611,9.1801426,7.861711328,10.57369437,7.881895547,11.305772,8.020961203,12.5155179,7.838777289,13.65012591,7.965106499,15.18584107,7.921921857
+7.075969182,3.542221865,7.217724387,5.795765611,7.325901336,7.696569809,8.190621344,7.980183798,9.225778378,7.777976941,10.57369437,7.924192979,11.33383846,7.966279449,12.5777343,7.75528717,13.68401219,7.922575126,15.26133202,7.879605607
+7.111144818,3.523300504,7.235642307,5.764817893,7.36231942,7.655457315,8.21095447,7.925780039,9.225778378,7.819716704,10.62625769,7.839793105,11.39018056,7.923726257,12.5777343,7.79690517,13.75203734,7.880255388,15.2992181,7.849191368
+7.128798156,3.504487095,7.253604708,5.734035428,7.398918544,7.573919721,8.231338073,7.895187572,9.271641018,7.736429598,10.67908231,7.79791556,11.44680275,7.839331354,12.64025998,7.713861028,13.82040065,7.838161707,15.33719824,7.79568063
+7.146495317,3.485774145,7.289663395,5.672962727,7.398918544,7.61456443,8.27225721,7.841347867,9.294657763,7.695119294,10.73216953,7.714860656,11.44680275,7.881400369,12.70309649,7.672656169,13.85470964,7.807907435,15.41344161,7.754038719
+7.182021549,3.467154308,7.289663395,5.703406134,7.435699607,7.493250577,8.292792996,7.79947733,9.317731647,7.654029575,10.73216953,7.756261711,11.50370641,7.797456276,12.76624537,7.631671414,13.8891038,7.754678145,15.49006399,7.712619245
+7.217724387,3.448633933,7.325901336,5.642659663,7.435699607,7.533462382,8.334017635,7.716405791,9.3640514,7.613144317,10.78552065,7.673650458,11.56089295,7.75580488,12.79793743,7.602214167,13.95814849,7.713255255,15.56706727,7.67142102
+7.235642307,3.430219222,7.36231942,5.582560198,7.472663513,7.433305774,8.334017635,7.757815138,9.387297553,7.572492321,10.83913698,7.632660392,11.58959274,7.725868494,12.82970816,7.550387161,14.0275364,7.672053633,15.64445335,7.610050882
+7.253604708,3.41190284,7.36231942,5.612518468,7.509811173,7.373840519,8.375447207,7.67518734,9.410601414,7.532057395,10.86604502,7.603199328,11.61836377,7.673198493,12.89348645,7.510055526,14.09726926,7.631072096,15.72222413,7.549171695
+7.289663395,3.3936776,7.398918544,5.552740034,7.547143499,7.295302401,8.396239161,7.645562128,9.457382835,7.491823671,10.89301986,7.551365606,11.67612029,7.63221084,12.95758178,7.469939328,14.13226557,7.601617162,15.80038151,7.508846552
+7.325901336,3.375549712,7.435699607,5.493598294,7.547143499,7.334451937,8.437978045,7.593424695,9.504396813,7.412028924,10.94717059,7.511028744,11.73416392,7.59144213,13.02199574,7.39037767,14.16734876,7.549794227,15.87892742,7.468736813
+7.344087804,3.35752525,7.435699607,5.523079159,7.584661409,7.256333343,8.458925231,7.552877996,9.504396813,7.451804862,11.00159051,7.431029446,11.76329385,7.562140163,13.02199574,7.430037418,14.23777664,7.509465758,15.9578638,7.428841326
+7.36231942,3.339597033,7.472663513,5.464253335,7.622365826,7.179046783,8.479924418,7.523724882,9.551644504,7.372436352,11.00159051,7.470907347,11.7924961,7.510586356,13.0867299,7.350900752,14.30855463,7.469352711,16.03719258,7.389158947
+7.398918544,3.321758026,7.491214317,5.435075797,7.622365826,7.217572444,8.522079313,7.472418295,9.59912707,7.33305527,11.05628096,7.391335379,11.85111825,7.470467323,13.15178588,7.302943814,14.37968446,7.409599087,16.07700474,7.360637767
+7.435699607,3.304014309,7.509811173,5.406054059,7.660257677,7.140698723,8.54323528,7.432517735,9.622956796,7.293898869,11.11124329,7.332205881,11.88053852,7.441632303,13.21716525,7.2531428,14.45116789,7.350323483,16.11691572,7.310457674
+7.454158648,3.286371825,7.547143499,5.377176732,7.698337893,7.083574278,8.585704902,7.392815718,9.646845679,7.254951552,11.16647884,7.27354941,11.91003183,7.390900041,13.28286964,7.195118821,14.52300668,7.31106052,16.19703517,7.271407661
+7.472663513,3.268823547,7.565879198,5.348464158,7.736607412,7.026906819,8.607018819,7.364280423,9.694801503,7.216198034,11.22198897,7.234696548,11.96923827,7.351420332,13.34890065,7.15668491,14.59520258,7.272007287,16.27755291,7.23256624
+7.509811173,3.251362588,7.584661409,5.319904902,7.775067173,6.952063861,8.628385647,7.314075497,9.718868739,7.177665617,11.27777505,7.15764044,12.02873903,7.312151511,13.4152599,7.118456299,14.66775738,7.233162663,16.35847091,7.193932298
+7.547143499,3.2339949,7.622365826,5.291487754,7.775067173,6.98937144,8.671278563,7.275006159,9.742995723,7.139338951,11.27777505,7.196051226,12.05860024,7.283927569,13.48194905,7.042638255,14.70416993,7.205243608,16.43979116,7.136381993
+7.584661409,3.216719984,7.660257677,5.23512859,7.813718124,6.896448465,8.692804915,7.246925593,9.791429522,7.101202998,11.33383846,7.119406726,12.08853558,7.234270437,13.48194905,7.080431894,14.74067287,7.156122892,16.52151567,7.079292081
+7.584661409,3.199549908,7.660257677,5.263222402,7.852561214,6.85960995,8.714384707,7.197520716,9.815736637,7.063284621,11.39018056,7.081377243,12.14862939,7.195627391,13.54896971,7.005018844,14.81395082,7.117897284,16.60364645,7.041476877
+7.622365826,3.182458986,7.698337893,5.207164289,7.891597398,6.804734171,8.757705137,7.159073975,9.840104093,7.025568717,11.41845656,7.054044059,12.20902193,7.157190763,13.61632354,6.967600383,14.88759305,7.079875865,16.68618551,7.00386367
+7.660257677,3.165459357,7.736607412,5.151703246,7.930827637,6.750297388,8.779446042,7.131440892,9.889020632,6.988040486,11.44680275,7.005954125,12.23933069,7.129564949,13.68401219,6.893389092,14.96160136,7.023237993,16.76913488,6.966451379
+7.698337893,3.148550535,7.736607412,5.179349364,7.970252895,6.696296092,8.801240919,7.082823316,9.913570016,6.950726364,11.50370641,6.968530668,12.2697147,7.080960162,13.68401219,6.930381799,15.03597759,6.967053215,16.8524966,6.910720885
+7.736607412,3.123362636,7.775067173,5.124184575,8.009874141,6.642726797,8.844993123,7.04498925,9.962851764,6.913597915,11.56089295,6.894309469,12.33070917,7.043136048,13.75203734,6.85656692,15.11072354,6.929837554,16.93627273,6.855436226
+7.775067173,3.098376235,7.813718124,5.069607342,8.04969235,6.589586047,8.86695072,7.017796519,9.987584432,6.876681295,11.56089295,6.931307115,12.39200686,6.968120233,13.82040065,6.819941439,15.18584107,6.892820686,17.02046532,6.818816786
+7.813718124,3.081825749,7.813718124,5.0968129,8.089708501,6.554386689,8.888962826,6.969953697,10.03723412,6.839948371,11.61836377,6.85748238,12.39200686,7.005513977,13.8891038,6.7835116,15.26133202,6.85600155,17.10507644,6.782392954
+7.852561214,3.065363669,7.852561214,5.0425272,8.129923578,6.4845765,8.933151108,6.932722542,10.06215144,6.803425018,11.67612029,6.820852009,12.45360926,6.930898872,13.95814849,6.711261022,15.33719824,6.819379089,17.19010818,6.746163685
+7.852561214,3.049001497,7.891597398,5.015591711,8.129923578,6.519375354,8.955327556,6.905963146,10.08713062,6.76709669,11.73416392,6.766286287,12.5155179,6.893876335,13.95814849,6.747276356,15.41344161,6.74674649,17.27556262,6.710127942
+7.891597398,3.032714754,7.911188201,4.988809897,8.17033857,6.449938068,8.977559057,6.858882732,10.13727516,6.730949129,11.76329385,6.730156269,12.5777343,6.820450272,14.0275364,6.675411717,15.41344161,6.782952254,17.36144187,6.674284689
+7.930827637,3.016515009,7.930827637,4.96217109,8.21095447,6.398339597,9.022187763,6.822244881,10.18766898,6.65925839,11.82177084,6.694206032,12.5777343,6.85705156,14.09726926,6.639753907,15.49006399,6.710707634,17.44774803,6.603197478
+7.970252895,3.000401798,7.970252895,4.935664837,8.251772278,6.347153906,9.044585244,6.795911914,10.18766898,6.694994657,11.85111825,6.658460901,12.64025998,6.784017715,14.16734876,6.604286569,15.56706727,6.674861284,17.44774803,6.638632899
+8.009874141,2.976399065,8.009874141,4.88309551,8.292792996,6.313249539,9.067038325,6.749581759,10.23831331,6.623686865,11.91003183,6.622893637,12.70309649,6.747779768,14.23777664,6.533944901,15.64445335,6.639206414,17.53448324,6.567925412
+8.04969235,2.952588349,8.009874141,4.909300171,8.313379762,6.279538607,9.112111846,6.713527757,10.2892094,6.588305352,11.93959835,6.587529294,12.76624537,6.711735392,14.23777664,6.569008685,15.72222413,6.603742001,17.62164962,6.532841757
+8.089708501,2.936816613,8.04969235,4.857011652,8.334017635,6.246007681,9.134732562,6.687614424,10.34035851,6.518133898,11.99895177,6.552340922,12.79793743,6.685828977,14.30855463,6.499042759,15.80038151,6.550913124,17.70924931,6.497945508
+8.129923578,2.921129123,8.089708501,4.831067125,8.375447207,6.212643603,9.1801426,6.64200953,10.34035851,6.553112834,12.05860024,6.482552523,12.86155777,6.640236259,14.37968446,6.464327052,15.87892742,6.498506869,17.79728448,6.463235663
+8.17033857,2.897760559,8.129923578,4.77961186,8.396239161,6.179469877,9.202932202,6.606543114,10.39176188,6.483316213,12.05860024,6.517340515,12.89348645,6.604779312,14.45116789,6.429796786,15.9578638,6.463794025,17.88575728,6.428711226
+8.21095447,2.874578939,8.129923578,4.805261185,8.417082731,6.14647329,9.24868127,6.571253177,10.44342079,6.448684513,12.11854524,6.447924901,12.95758178,6.569498796,14.52300668,6.361313593,16.03719258,6.429266606,17.93015847,6.403897247
+8.251772278,2.859223902,8.17033857,4.754080776,8.458925231,6.113640891,9.271641018,6.545889005,10.46934647,6.414250397,12.17878823,6.413482249,12.98974883,6.544141396,14.52300668,6.395450968,16.11691572,6.39492362,18.0192918,6.360227108
+8.292792996,2.843950887,8.190621344,4.728695355,8.500975736,6.048525046,9.294657763,6.501263345,10.4953365,6.380000149,12.20902193,6.379236103,13.02199574,6.49952765,14.59520258,6.327333589,16.19703517,6.360764083,18.10886823,6.326252908
+8.334017635,2.821199736,8.231338073,4.703436251,8.500975736,6.080983872,9.340862812,6.466535777,10.54751029,6.345920328,12.2697147,6.345160364,13.0867299,6.464809353,14.66775738,6.293535096,16.27755291,6.293016151,18.1538233,6.292472541
+8.375447207,2.798630591,8.251772278,4.678321257,8.54323528,6.016215855,9.3640514,6.4415758,10.57369437,6.312034943,12.30017412,6.311279037,13.15178588,6.43027651,14.74067287,6.259917142,16.27755291,6.326787015,18.2440685,6.258860264
+8.417082731,2.783681245,8.292792996,4.653331234,8.585704902,5.952137675,9.387297553,6.39766128,10.59994345,6.278330496,12.36132002,6.277566301,13.21716525,6.378835329,14.81395082,6.226478765,16.35847091,6.25940097,18.33476233,6.225427532
+8.458925231,2.761412241,8.313379762,4.628483787,8.585704902,5.984079247,9.433963127,6.36348712,10.65263725,6.24479376,12.42276987,6.244033647,13.28286964,6.327805669,14.85072629,6.202445377,16.43979116,6.22596535,18.42590701,6.192173386
+8.500975736,2.739321386,8.334017635,4.603769018,8.628385647,5.920343353,9.457382835,6.338924897,10.70559301,6.178281018,12.45360926,6.210692308,13.34890065,6.294004654,14.88759305,6.160161094,16.52151567,6.192708331,18.56347428,6.109837081
+8.54323528,2.72468885,8.375447207,4.579177228,8.671278563,5.888718864,9.504396813,6.295697825,10.70559301,6.211436167,12.48452521,6.177529001,13.4152599,6.260384192,14.96160136,6.12725558,16.60364645,6.15962896,18.56347428,6.142624932
+8.585704902,2.702891776,8.417082731,4.530404819,8.692804915,5.857274803,9.527991372,6.262080613,10.75881202,6.145278714,12.54658754,6.144530714,13.48194905,6.193705398,15.07330423,6.078226584,16.68618551,6.094023301,18.65575591,6.077200381
+8.628385647,2.688453835,8.417082731,4.554716799,8.714384707,5.825998644,9.575356355,6.228630679,10.81229558,6.112452696,12.60895838,6.111708692,13.48194905,6.22694332,15.11072354,6.045770606,16.68618551,6.126726289,18.7484963,6.044738015
+8.671278563,2.666946635,8.458925231,4.506204917,8.757705137,5.794878114,9.59912707,6.204588985,10.86604502,6.047349507,12.67163929,6.046613427,13.54896971,6.160620701,15.18584107,6.013476128,16.76913488,6.061471073,18.8416977,6.012449052
+8.714384707,2.652700701,8.500975736,4.482134281,8.801240919,5.733157383,9.646845679,6.16227799,10.86604502,6.079802024,12.67163929,6.079061994,13.61632354,6.127712732,15.22353975,5.981365899,16.8524966,6.029092728,18.93536243,5.980332566
+8.757705137,2.638530864,8.522079313,4.458200976,8.801240919,5.763923819,9.670793865,6.129373202,10.92006166,6.015046594,12.73463179,6.014314446,13.68401219,6.094980546,15.2992181,5.949415449,16.93627273,5.996887337,19.02949277,5.948387635
+8.801240919,2.61742304,8.54323528,4.434395469,8.844993123,5.702532779,9.694801503,6.105714629,10.97434682,5.982916233,12.79793743,5.982187996,13.7179826,6.071454724,15.37527267,5.917635667,17.02046532,5.964853976,19.12409105,5.916613344
+8.844993123,2.596484075,8.585704902,4.410708415,8.86695072,5.672082898,9.742995723,6.064077888,11.00159051,5.950969185,12.86155777,5.950233154,13.75203734,6.030063451,15.45170531,5.886025642,17.10507644,5.932991727,19.1715664,5.885020334
+8.888962826,2.582614528,8.628385647,4.363730353,8.888962826,5.641795611,9.767182601,6.031697461,11.05628096,5.919181104,12.92549438,5.918449004,13.82040065,5.997852875,15.5285179,5.823334107,17.19010818,5.885528744,19.26687094,5.85358453
+8.933151108,2.561954026,8.628385647,4.38714789,8.933151108,5.611659031,9.815736637,5.999478156,11.08372806,5.887574383,12.98974883,5.855412131,13.8891038,5.965814357,15.5285179,5.854584467,17.23278243,5.854101718,19.31470074,5.822328076
+8.977559057,2.548268927,8.671278563,4.340420769,8.977559057,5.581683431,9.840104093,5.97632096,11.13882682,5.856124936,12.98974883,5.886834635,13.95814849,5.933946977,15.60571235,5.79222781,17.31844901,5.82283107,19.41071683,5.791227152
+9.022187763,2.527883184,8.714384707,4.294191334,8.999845747,5.551878851,9.864532042,5.935578249,11.1941995,5.824843481,13.05432269,5.824134484,14.0275364,5.870745037,15.68329053,5.761287672,17.40454145,5.791727459,19.50721023,5.760292359
+9.067038325,2.51438008,8.714384707,4.317235697,9.022187763,5.522233418,9.913570016,5.903872381,11.22198897,5.793740496,13.11921757,5.793023911,14.0275364,5.902249823,15.76125437,5.730512806,17.49106187,5.760789994,19.60418331,5.72952281
+9.112111846,2.500949105,8.757705137,4.271253205,9.067038325,5.492735499,9.962851764,5.872335875,11.24984743,5.762803592,13.18443504,5.762079521,14.09726926,5.839385486,15.83960578,5.699902328,17.5780124,5.730017786,19.70163845,5.698917621
+9.157409434,2.480941913,8.801240919,4.248437603,9.089547147,5.463405875,9.987584432,5.849669432,11.305772,5.732020628,13.21716525,5.731311677,14.16734876,5.808193448,15.87892742,5.669466493,17.62164962,5.699421143,19.79957807,5.668475914
+9.202932202,2.467689554,8.823089901,4.225752171,9.134732562,5.434222194,10.0123785,5.809790148,11.33383846,5.70141329,13.28286964,5.700696932,14.23777664,5.777168026,15.91834668,5.639193176,17.70924931,5.668976747,19.8487303,5.638207887
+9.24868127,2.447948433,8.86695072,4.20317962,9.157409434,5.405205014,10.06215144,5.778756198,11.36197458,5.670969387,13.31584421,5.670256854,14.30855463,5.746308333,15.99747902,5.609070498,17.75321233,5.638706046,19.94740112,5.608090472
+9.294657763,2.434872314,8.888962826,4.180735852,9.202932202,5.376332222,10.11217181,5.747888021,11.41845656,5.640676971,13.38203914,5.639968244,14.34407545,5.724128339,16.07700474,5.579108725,17.84146604,5.608585969,19.99692032,5.578144885
+9.340862812,2.421866043,8.933151108,4.158403764,9.225778378,5.347624158,10.13727516,5.72570193,11.47521931,5.610546366,13.44856314,5.609841426,14.37968446,5.685104915,16.15692578,5.549306998,17.93015847,5.578626784,20.09632782,5.548348307
+9.340862812,2.408938706,8.977559057,4.114112976,9.24868127,5.319069386,10.16244083,5.686667778,11.50370641,5.580587666,13.51541783,5.550091504,14.45116789,5.654736991,16.23724413,5.519664461,18.0192918,5.548827631,20.19622949,5.518710891
+9.387297553,2.396070963,8.977559057,4.136190966,9.294657763,5.290656702,10.21295975,5.656291506,11.53226423,5.550788937,13.51541783,5.579875534,14.52300668,5.624531283,16.31796175,5.490180265,18.10886823,5.519187655,20.29662778,5.489231789
+9.433963127,2.383271956,9.022187763,4.092136764,9.317731647,5.26240612,10.23831331,5.634458966,11.58959274,5.521138484,13.58260487,5.520444777,14.59520258,5.594486923,16.35847091,5.460864285,18.19888996,5.460403279,20.39752517,5.459910154
+9.480860682,2.370541316,9.067038325,4.070277942,9.340862812,5.234306389,10.26372981,5.596046849,11.64720623,5.491646414,13.65012591,5.490956413,14.66775738,5.564603051,16.39908063,5.431704844,18.19888996,5.489706006,20.4481618,5.430755807
+9.527991372,2.35787868,9.089547147,4.048543832,9.387297553,5.20634648,10.31475225,5.566154644,11.70510613,5.462311881,13.7179826,5.461625566,14.70416993,5.543124416,16.48060276,5.402690499,18.2893592,5.431235637,20.54981248,5.401746532
+9.575356355,2.345283683,9.112111846,4.026925775,9.433963127,5.150894147,10.34035851,5.54467002,11.73416392,5.433144711,13.75203734,5.43246206,14.74067287,5.505334959,16.56253015,5.373831138,18.38027817,5.402223798,20.60082716,5.372902762
+9.622956796,2.326521789,9.157409434,4.005415288,9.433963127,5.178535923,10.39176188,5.506859215,11.76329385,5.404133284,13.82040065,5.40344367,14.81395082,5.475927307,16.64486482,5.345125935,18.47164911,5.37336693,20.70323676,5.344202518
+9.670793865,2.31409429,9.202932202,3.984019703,9.480860682,5.123379798,10.41755932,5.477454174,11.82177084,5.375266217,13.85470964,5.374590838,14.88759305,5.44667674,16.68618551,5.316584503,18.56347428,5.344664207,20.80615546,5.315655581
+9.718868739,2.295581907,9.225778378,3.962746186,9.504396813,5.096022427,10.46934647,5.448195451,11.88053852,5.346553348,13.92358335,5.345881577,14.96160136,5.388664671,16.76913488,5.288185092,18.65575591,5.316114803,20.90958578,5.287261132
+9.767182601,2.283319679,9.271641018,3.941578525,9.527991372,5.068811136,10.52139106,5.390167207,11.91003183,5.318004294,13.99279943,5.31732567,14.96160136,5.41758242,16.8524966,5.259937381,18.70206862,5.287728283,21.01353027,5.259018356
+9.815736637,2.265053487,9.294657763,3.920531632,9.575356355,5.041735248,10.52139106,5.419093019,11.93959835,5.289607684,14.0275364,5.288932684,15.03597759,5.359880232,16.89433274,5.231850832,18.79503923,5.259483012,21.11799148,5.230926444
+9.864532042,2.252954331,9.340862812,3.899589468,9.622956796,4.988036175,10.57369437,5.361374742,11.99895177,5.261352374,14.09726926,5.26068098,15.11072354,5.33124955,16.97831684,5.20390404,18.8416977,5.231398889,21.17041666,5.202994805
+9.913570016,2.234931058,9.387297553,3.858055288,9.622956796,5.014803989,10.62625769,5.332736076,12.05860024,5.233247995,14.16734876,5.232580187,15.18584107,5.302771803,17.06271843,5.17610653,18.93536243,5.203454511,21.27565777,5.175202152
+9.962851764,2.222992806,9.387297553,3.878759169,9.670793865,4.961391759,10.65263725,5.312152417,12.11854524,5.177509137,14.20251905,5.204639717,15.26133202,5.274446175,17.1475396,5.148457505,19.02949277,5.175659402,21.38142205,5.147557958
+10.0123785,2.211118324,9.433963127,3.83744685,9.718868739,4.934889668,10.67908231,5.275937579,12.11854524,5.20529374,14.27312176,5.176838277,15.2992181,5.254087507,17.20432117,5.116396965,19.12409105,5.148012766,21.43450119,5.120071483
+10.06215144,2.199307272,9.480860682,3.816948496,9.742995723,4.90853878,10.73216953,5.247755291,12.17878823,5.14985262,14.34407545,5.121700234,15.37527267,5.218258273,17.23278243,5.093621743,19.2191596,5.120513808,21.54105511,5.092721778
+10.11217181,2.181713166,9.504396813,3.796567092,9.767182601,4.882328598,10.78552065,5.219723542,12.23933069,5.122343834,14.34407545,5.149185344,15.45170531,5.176513044,17.31844901,5.066413324,19.26687094,5.093171741,21.64813872,5.065518167
+10.16244083,2.170059186,9.551644504,3.776287104,9.815736637,4.856248836,10.81229558,5.199576097,12.30017412,5.067786207,14.41538187,5.094341829,15.5285179,5.148861847,17.40454145,5.039350244,19.36264927,5.065965726,21.75575466,5.038459868
+10.21295975,2.152699061,9.59912707,3.756115445,9.864532042,4.804525362,10.86604502,5.164118593,12.30017412,5.094981992,14.48704275,5.067129564,15.60571235,5.121358354,17.49106187,5.012431725,19.41071683,5.038914929,21.86390557,5.011546105
+10.26372981,2.141200064,9.622956796,3.736058871,9.864532042,4.830308384,10.92006166,5.122806472,12.36132002,5.040715793,14.55905988,5.040062658,15.68329053,5.094001776,17.5780124,4.985656996,19.50721023,5.011998736,21.97259411,4.984776107
+10.31475225,2.129762492,9.670793865,3.716102098,9.913570016,4.7788612,10.97434682,5.095442158,12.42276987,5.01378998,14.63143501,5.013140334,15.72222413,5.066801275,17.66539517,4.959025289,19.60418331,4.98522632,22.08182296,4.958149105
+10.36602833,2.112724733,9.718868739,3.696251927,9.938180343,4.753343458,11.01068676,5.063711756,12.48452521,4.987007995,14.66775738,4.98637161,15.83960578,5.012825384,17.70924931,4.932545523,19.70163845,4.958596913,22.1915948,4.931664336
+10.41755932,2.101439266,9.742995723,3.676515007,9.962851764,4.727961975,11.02890184,5.041171058,12.54658754,4.960369071,14.74067287,4.959736085,15.83960578,5.039726227,17.79728448,4.90619752,19.75054755,4.932119435,22.24668519,4.90533067
+10.46934647,2.090214083,9.767182601,3.656883477,10.0123785,4.702706788,11.08372806,5.014242813,12.5777343,4.933882131,14.77726642,4.933252524,15.91834668,4.986048552,17.84146604,4.879999839,19.89800455,4.905764076,22.35727659,4.879128039
+10.52139106,2.073492705,9.815736637,3.637349632,10.03723412,4.677595689,11.13882682,4.98745841,12.60895838,4.907536622,14.85072629,4.906900744,15.99747902,4.959414754,17.93015847,4.853932517,19.94740112,4.87956871,22.41277828,4.853074902
+10.57369437,2.062416803,9.864532042,3.617920131,10.06215144,4.652618677,11.1941995,4.947559542,12.67163929,4.881322208,14.92455133,4.880689726,16.07700474,4.932923223,18.0192918,4.828004438,19.99692032,4.853513219,22.52419534,4.827151403
+10.62625769,2.045917799,9.913570016,3.598594415,10.11217181,4.627765948,11.24984743,4.907979859,12.73463179,4.855247822,14.96160136,4.85462825,16.15692578,4.906573202,18.10886823,4.802214858,20.09632782,4.82758738,22.63616628,4.80136638
+10.67908231,2.034989192,9.938180343,3.579378958,10.16244083,4.603045975,11.305772,4.881763077,12.79793743,4.829312717,14.99874337,4.828705935,16.21042708,4.876018927,18.1538233,4.776572415,20.19622949,4.801800027,22.74869384,4.775719091
+10.73216953,2.024118963,9.962851764,3.560266106,10.18766898,4.578467036,11.36197458,4.855686336,12.86155777,4.777876137,15.07330423,4.802912607,16.23724413,4.854313728,18.2440685,4.751057567,20.29662778,4.776150422,22.86178079,4.750208802
+10.78552065,2.013306798,10.0123785,3.541248359,10.21295975,4.554019342,11.3995981,4.825448945,12.86155777,4.803516148,15.14823574,4.777257059,16.31796175,4.828383613,18.2893592,4.725688289,20.34701393,4.750647156,22.97542992,4.72483478
+10.83913698,1.997200667,10.06215144,3.522332198,10.26372981,4.529693299,11.41845656,4.803968854,12.92549438,4.752354326,15.22353975,4.751738554,16.39908063,4.802592007,18.38027817,4.700445248,20.4481618,4.725270792,23.089644,4.699596297
+10.89301986,1.986532291,10.08713062,3.50352396,10.31475225,4.505497196,11.47521931,4.778307663,12.98974883,4.726968843,15.26133202,4.72636564,16.48060276,4.776938171,18.47164911,4.675337046,20.49892413,4.700039209,23.20442587,4.67449263
+10.94717059,1.970640351,10.11217181,3.484816152,10.34035851,4.48143914,11.53226423,4.752783547,13.05432269,4.701718961,15.33719824,4.70111898,16.56253015,4.75142137,18.56347428,4.650362963,20.60082716,4.674933176,23.31977833,4.649523058
+11.00159051,1.960113851,10.16244083,3.466201433,10.36602833,4.457509547,11.58959274,4.71476204,13.0867299,4.676613137,15.37527267,4.67601636,16.64486482,4.726040871,18.65575591,4.625522284,20.70323676,4.649961251,23.43570422,4.624686866
+11.05628096,1.944433255,10.21295975,3.447686147,10.41755932,4.41003301,11.64720623,4.6770447,13.15178588,4.651632238,15.45170531,4.651038649,16.72760878,4.675704231,18.70206862,4.600823329,20.80615546,4.625122718,23.55220639,4.59998334
+11.11124329,1.934046744,10.26372981,3.429269764,10.41755932,4.433699026,11.70510613,4.652061496,13.18443504,4.626793863,15.5285179,4.626194361,16.72760878,4.700795946,18.8416977,4.551811433,20.90958578,4.600416863,23.61067448,4.575420755
+11.16647884,1.923715715,10.31475225,3.410951756,10.46934647,4.386476093,11.76329385,4.602512803,13.24997672,4.602079082,15.56706727,4.601491817,16.81076407,4.650728187,18.8416977,4.576238289,21.01353027,4.57584298,23.72804646,4.550980392
+11.22198897,1.913439871,10.34035851,3.392738256,10.52139106,4.363045009,11.76329385,4.627211744,13.31584421,4.57749632,15.64445335,4.576912191,16.89433274,4.625885557,18.93536243,4.527497183,21.11799148,4.527106084,23.78695107,4.526679469
+11.27777505,1.898132659,10.36602833,3.374622012,10.54751029,4.339747607,11.82177084,4.577927724,13.34890065,4.553053809,15.68329053,4.552472799,16.97831684,4.601175628,19.02949277,4.503312812,21.11799148,4.551400361,23.90519935,4.502499465
+11.33383846,1.887993471,10.41755932,3.356595913,10.57369437,4.316574605,11.88053852,4.55347397,13.4152599,4.528732923,15.76125437,4.528155017,17.06271843,4.576597691,19.12409105,4.479257625,21.22297198,4.502923802,24.02403545,4.478448623
+11.39018056,1.872889826,10.46934647,3.338666104,10.62625769,4.293516912,11.93959835,4.529150839,13.44856314,4.504550794,15.83960578,4.503967132,17.11921913,4.548098244,19.2191596,4.455330933,21.32847435,4.478870693,24.1434623,4.454526253
+11.44680275,1.862885477,10.4953365,3.320838589,10.67908231,4.270582385,11.99895177,4.480911257,13.51541783,4.480488995,15.91834668,4.47990845,17.1475396,4.527852757,19.31470074,4.43153205,21.43450119,4.454946068,24.26348284,4.430731668
+11.50370641,1.852934568,10.52139106,3.303106269,10.70559301,4.247778706,11.99895177,4.504957634,13.58260487,4.456555726,15.99747902,4.455978282,17.23278243,4.503666486,19.41071683,4.407860292,21.54105511,4.431149241,24.32371667,4.407072838
+11.56089295,1.838111388,10.57369437,3.285462183,10.73216953,4.225096792,12.05860024,4.456975732,13.65012591,4.4327503,16.03719258,4.432184642,17.31844901,4.479609411,19.50721023,4.384314981,21.64813872,4.407479528,24.44463328,4.383531733
+11.61836377,1.828292814,10.62625769,3.267912346,10.78552065,4.202527742,12.11854524,4.433168063,13.68401219,4.409080691,16.07700474,4.408518054,17.40454145,4.45568084,19.55563666,4.360904003,21.75575466,4.38393625,24.56615098,4.360116377
+11.67612029,1.813666764,10.67908231,3.250456255,10.83913698,4.180079249,12.17878823,4.409487566,13.7179826,4.385537471,16.15692578,4.384969229,17.49106187,4.431880087,19.60418331,4.337618033,21.86390557,4.360518734,24.62713618,4.336834613
+11.73416392,1.803978765,10.70559301,3.233099755,10.86604502,4.157758831,12.2191165,4.382028749,13.78617662,4.362111401,16.23724413,4.361546195,17.5780124,4.40820647,19.70163845,4.314447932,21.91818247,4.337234821,24.74956113,4.313668697
+11.7924961,1.794342515,10.73216953,3.215835935,10.89301986,4.135557597,12.23933069,4.362522507,13.85470964,4.338810465,16.31796175,4.338248278,17.62164962,4.384667919,19.79957807,4.291401599,21.97259411,4.314075237,24.87259468,4.290626526
+11.85111825,1.784757739,10.78552065,3.198658018,10.94717059,4.113466836,12.30017412,4.339219375,13.92358335,4.315633995,16.39908063,4.315074811,17.70924931,4.361246493,19.89800455,4.268478371,22.08182296,4.291030894,24.99623984,4.267707438
+11.91003183,1.770479964,10.83913698,3.181571859,11.00159051,4.091494076,12.36132002,4.31604072,13.95814849,4.292589754,16.48060276,4.292025128,17.75321233,4.337958694,19.99692032,4.245677591,22.1915948,4.268109646,25.12049965,4.244910777
+11.96923827,1.756316408,10.89301986,3.16457697,11.05628096,4.069638687,12.42276987,4.292985879,13.99279943,4.269668562,16.52151567,4.269106952,17.84146604,4.314786774,20.09632782,4.222998606,22.30191234,4.245310836,25.18286101,4.222244177
+12.02873903,1.746934755,10.92006166,3.147679041,11.11124329,4.026293327,12.46390606,4.266252542,14.0623596,4.246861425,16.56253015,4.246311151,17.93015847,4.291738631,20.19622949,4.200440764,22.41277828,4.22263381,25.30804855,4.199690365
+12.08853558,1.737603215,10.97434682,3.130865195,11.11124329,4.047900042,12.48452521,4.247261668,14.13226557,4.224176116,16.64486482,4.223628781,18.0192918,4.268813602,20.29662778,4.178003418,22.52419534,4.200077917,25.3708755,4.177265229
+12.14862939,1.728321522,11.02890184,3.114141164,11.16647884,4.004786219,12.54658754,4.224574221,14.20251905,4.201611984,16.72760878,4.201067573,18.10886823,4.246011032,20.34701393,4.155694084,22.63616628,4.177642509,25.49699768,4.154951679
+12.20902193,1.719089408,11.05628096,3.097512548,11.22198897,3.983393994,12.60895838,4.202007963,14.23777664,4.179176587,16.81076407,4.178626879,18.19888996,4.200787147,20.39752517,4.133503876,22.74869384,4.155326944,25.62374684,4.132757321
+12.2697147,1.705336968,11.11124329,3.080966675,11.27777505,3.94096722,12.67163929,4.179562246,14.27312176,4.156860989,16.89433274,4.156306056,18.19888996,4.223330265,20.49892413,4.111424085,22.86178079,4.133130581,25.75112608,4.110681518
+12.33070917,1.69622763,11.16647884,3.064509184,11.27777505,3.96211604,12.71359957,4.153535223,14.34407545,4.134656432,16.93627273,4.13411258,18.2893592,4.178347951,20.60082716,4.089462236,22.91853491,4.111060856,25.81505297,4.088731663
+12.39200686,1.682658081,11.1941995,3.048145589,11.36197458,3.919908199,12.73463179,4.135046101,14.41538187,4.112570484,17.02046532,4.112029537,18.38027817,4.156028618,20.70323676,4.067617701,22.97542992,4.089108976,25.87913855,4.066899015
+12.45360926,1.673669886,11.22198897,3.03186937,11.39018056,3.898977019,12.79793743,4.112958071,14.48704275,4.090602512,17.10507644,4.090064455,18.47164911,4.133828507,20.80615546,4.045889851,23.14696379,4.067258342,26.00778738,4.045175005
+12.5155179,1.664729703,11.27777505,3.015674141,11.44680275,3.878149992,12.86155777,4.090988029,14.55905988,4.068751885,17.19010818,4.068216703,18.56347428,4.111746982,20.90958578,4.024278065,23.26203059,4.045532412,26.13707574,4.023567037
+12.5777343,1.655837275,11.33383846,2.999565421,11.50370641,3.857434215,12.92549438,4.069135343,14.59520258,4.047025923,17.23278243,4.046493598,18.65575591,4.089783408,21.01353027,4.002781721,23.31977833,4.023930435,26.26700681,4.002074491
+12.64025998,1.642590843,11.39018056,2.983542749,11.56089295,3.836829096,12.98974883,4.036582913,14.63143501,4.025415972,17.31844901,4.024878587,18.7484963,4.04622349,21.11799148,3.981400204,23.43570422,4.002435949,26.33221437,3.980704567
+12.70309649,1.629450379,11.44680275,2.951765301,11.58959274,3.816341534,13.05432269,4.004290897,14.70416993,4.00391355,17.40454145,4.003379035,18.7484963,4.067937157,21.22297198,3.9601329,23.55220639,3.981056278,26.52880989,3.938298705
+12.76624537,1.620746402,11.44680275,2.967605664,11.61836377,3.795963371,13.11921757,3.982901318,14.77726642,3.982525987,17.49106187,3.981994327,18.8416977,4.024609921,21.27565777,3.938986932,23.66928772,3.959790811,26.52880989,3.959433205
+12.82970816,1.612088918,11.53226423,2.935992196,11.67612029,3.775686608,13.18443504,3.961625995,14.85072629,3.961252669,17.5780124,3.960723849,18.93536243,4.003111805,21.38142205,3.917946185,23.78695107,3.938638937,26.66068833,3.917261634
+12.89348645,1.60347768,11.56089295,2.920314844,11.73416392,3.755518156,13.24997672,3.940464318,14.92455133,3.919061719,17.66539517,3.939566991,19.02949277,3.981728524,21.43450119,3.897025482,23.90519935,3.917600049,26.79322235,3.896336937
+12.95758178,1.59491244,11.61836377,2.904715502,11.7924961,3.715518467,13.31584421,3.898494784,14.92455133,3.940092986,17.70924931,3.918530839,19.12409105,3.960459466,21.54105511,3.876208879,24.02403545,3.896673543,26.92641522,3.875524012
+13.02199574,1.586392953,11.67612029,2.889199486,11.7924961,3.735457438,13.31584421,3.919415679,14.99874337,3.898127406,17.75321233,3.897607014,19.2191596,3.93930402,21.64813872,3.855503471,24.1434623,3.87585882,27.06027022,3.854822263
+13.0867299,1.577918974,11.70510613,2.873771994,11.85111825,3.695671414,13.38203914,3.877670332,15.07330423,3.877304917,17.84146604,3.876787305,19.31470074,3.91826158,21.75575466,3.834908665,24.26348284,3.855155283,27.19479062,3.834231095
+13.15178588,1.565295875,11.73416392,2.85842688,11.91003183,3.675930377,13.44856314,3.856957118,15.14823574,3.856593655,17.93015847,3.856078807,19.41071683,3.89733154,21.86390557,3.814423869,24.32371667,3.834569865,27.32997974,3.813749919
+13.21716525,1.55693459,11.7924961,2.843158122,11.96923827,3.65629479,13.51541783,3.836354547,15.22353975,3.835993025,18.0192918,3.835480928,19.50721023,3.876513303,21.97259411,3.794048496,24.44463328,3.814086879,27.46584091,3.793378146
+13.28286964,1.544479362,11.85111825,2.827970925,12.02873903,3.636764089,13.58260487,3.815862028,15.2992181,3.815502437,18.10886823,3.814993075,19.5718055,3.85237343,22.08182296,3.773781962,24.56615098,3.793713306,27.60237746,3.773115192
+13.34890065,1.536229272,11.91003183,2.812864853,12.05860024,3.617344817,13.62758168,3.792099843,15.37527267,3.774863861,18.19888996,3.794614662,19.60418331,3.835224905,22.1915948,3.753623684,24.74956113,3.773441154,27.73959275,3.752960477
+13.4152599,1.52802325,11.93959835,2.797844966,12.11854524,3.598022175,13.65012591,3.775219621,15.37527267,3.795121303,18.2893592,3.774345103,19.70163845,3.81473842,22.30191234,3.733573086,24.81100164,3.753292066,27.87749016,3.732913421
+13.48194905,1.519861063,11.99895177,2.782899816,12.14862939,3.578809774,13.7179826,3.755053664,15.45170531,3.754699804,18.38027817,3.754183818,19.79957807,3.794361367,22.41277828,3.713629591,24.87259468,3.733250568,28.01607308,3.712973449
+13.54896971,1.511742475,12.05860024,2.768034499,12.20902193,3.559692972,13.78617662,3.734995427,15.5285179,3.734643457,18.47164911,3.724150949,19.89800455,3.774093161,22.52419534,3.683921149,24.99623984,3.713308796,28.15534492,3.69313999
+13.61632354,1.503667253,12.08853558,2.753253993,12.2697147,3.540678286,13.85470964,3.715044334,15.60571235,3.714694245,18.56347428,3.694358339,19.99692032,3.753933221,22.63616628,3.654450371,25.12049965,3.693473546,28.29530909,3.673412475
+13.68401219,1.491638157,12.14862939,2.738547033,12.33070917,3.521765171,13.92358335,3.695199814,15.68329053,3.694851594,18.65575591,3.674624316,20.09632782,3.733880969,22.74869384,3.634929523,25.24537718,3.673744249,28.43596904,3.653790338
+13.75203734,1.47970529,12.20902193,2.723918634,12.36132002,3.50295996,13.99279943,3.65584257,15.76125437,3.675114936,18.7484963,3.654995705,20.19622949,3.71393583,22.86178079,3.615512949,25.3708755,3.65412034,28.57732824,3.634273016
+13.82040065,1.471801201,12.2697147,2.709368374,12.42276987,3.484248323,13.99279943,3.675461296,15.80038151,3.655490882,18.8416977,3.635471944,20.26310635,3.690808361,22.97542992,3.596200091,25.49699768,3.634601254,28.71939015,3.614859948
+13.8891038,1.463939333,12.30017412,2.694901128,12.45360926,3.465643441,14.0623596,3.636314285,15.83960578,3.635971614,18.93536243,3.616052472,20.29662778,3.67437903,23.089644,3.576990397,25.62374684,3.615186434,28.86215827,3.595550579
+13.95814849,1.45611946,12.36132002,2.68050587,12.5155179,3.447131137,14.13226557,3.616890314,15.91834668,3.616549474,19.02949277,3.596736733,20.39752517,3.65475173,23.20442587,3.557883314,25.75112608,3.59587532,29.00563611,3.576344354
+14.0275364,1.448341358,12.39200686,2.666192742,12.54658754,3.42872445,14.20251905,3.597570099,15.99747902,3.597231079,19.12409105,3.577524172,20.49892413,3.635229272,23.31977833,3.538878294,25.87913855,3.576667361,29.1498272,3.557240722
+14.09726926,1.440604804,12.45360926,2.651950834,12.60895838,3.410409354,14.27312176,3.578353086,16.07700474,3.578015878,19.1715664,3.558421224,20.60082716,3.615811097,23.43570422,3.519974794,26.00778738,3.557562003,29.29473509,3.538239135
+14.16734876,1.432909577,12.5155179,2.637785003,12.67163929,3.392192091,14.34407545,3.549726835,16.15692578,3.558903317,19.2191596,3.539420281,20.70323676,3.596496647,23.55220639,3.501172269,26.13707574,3.5385587,29.44036333,3.519339049
+14.23777664,1.425255455,12.5777343,2.62369484,12.70309649,3.374078763,14.41538187,3.52132959,16.23724413,3.539892849,19.31470074,3.520513885,20.80615546,3.577285368,23.61067448,3.482477018,26.26700681,3.519656907,29.58671551,3.50053992
+14.30855463,1.417642218,12.60895838,2.609685066,12.76624537,3.356055566,14.48704275,3.502519828,16.27755291,3.520990842,19.41071683,3.50170848,20.90958578,3.558176709,23.72804646,3.463874794,26.35398617,3.497739255,29.73379522,3.48184121
+14.37968446,1.410069649,12.67163929,2.595745003,12.82970816,3.338128643,14.55905988,3.483810542,16.35847091,3.50218289,19.50721023,3.483003528,21.01353027,3.539170123,23.84600191,3.445371937,26.39758379,3.482169355,29.88160609,3.481827538
+14.45116789,1.40253753,12.73463179,2.581879404,12.89348645,3.32029748,14.63143501,3.465201195,16.39908063,3.483482243,19.60418331,3.464398492,21.11799148,3.520265063,23.96454374,3.426967916,26.52880989,3.463568774,30.03015175,3.463228783
+14.52300668,1.395045645,12.76624537,2.568092913,12.92549438,3.302568049,14.70416993,3.446691252,16.48060276,3.464874649,19.70163845,3.445892837,21.22297198,3.482771034,24.02403545,3.408668895,26.66068833,3.445067551,30.17943586,3.444729377
+14.59520258,1.387593779,12.82970816,2.554375022,12.95758178,3.284933287,14.77726642,3.419118275,16.56253015,3.446366451,19.79957807,3.427486034,21.22297198,3.501460988,24.1434623,3.390460929,26.79322235,3.426665156,30.32946207,3.426328788
+14.66775738,1.380181718,12.89348645,2.540730407,13.02199574,3.267386275,14.85072629,3.391765877,16.64486482,3.427957117,19.8487303,3.409184246,21.32847435,3.464167239,24.26348284,3.372350224,26.92641522,3.40836106,30.48023408,3.408026489
+14.74067287,1.37280925,12.95758178,2.527158678,13.0867299,3.249932994,14.92455133,3.373648202,16.72760878,3.40964612,19.99692032,3.39096687,21.43450119,3.44566282,24.38410002,3.354336261,27.06027022,3.390154739,30.55590092,3.38982861
+14.81395082,1.361826997,12.98974883,2.513664379,13.11921757,3.232579289,14.99874337,3.355627304,16.81076407,3.391432935,20.04656245,3.372860084,21.54105511,3.427257245,24.50531681,3.336418521,27.19479062,3.372045669,30.7077986,3.371721282
+14.88759305,1.354552574,13.05432269,2.500237227,13.18443504,3.215311934,15.07330423,3.337702669,16.8524966,3.37332366,20.09632782,3.354849984,21.64813872,3.408949986,24.62713618,3.318596493,27.32997974,3.354033332,30.9370621,3.353704094
+14.96160136,1.347317008,13.11921757,2.486881798,13.21716525,3.198143096,15.14823574,3.311001583,16.93627273,3.355304497,20.22406798,3.345867526,21.75575466,3.390740519,24.74956113,3.300869664,27.46584091,3.336117211,31.09085458,3.335789731
+15.03597759,1.340120093,13.15178588,2.473602566,13.28286964,3.181059688,15.22353975,3.284514101,16.97831684,3.337388138,20.29662778,3.336916398,21.86390557,3.37262832,24.87259468,3.283237525,27.60237746,3.318296792,31.24541159,3.317971062
+15.11072354,1.329399347,13.21716525,2.460389411,13.34890065,3.164067534,15.2992181,3.266969328,17.06271843,3.31956093,20.34701393,3.319098226,21.97259411,3.354612871,24.99623984,3.265699571,27.73959275,3.300571564,31.40073691,3.300247573
+15.18584107,1.322298141,13.28286964,2.447246836,13.4152599,3.147166147,15.37527267,3.249518274,17.1475396,3.301828949,20.39752517,3.301375198,22.08182296,3.336693654,25.12049965,3.2482553,27.87749016,3.282941018,31.55683439,3.282618758
+15.26133202,1.315234868,13.34890065,2.434174465,13.44856314,3.130361187,15.45170531,3.232160437,17.23278243,3.284191687,20.49892413,3.283740359,22.1915948,3.318870156,25.24537718,3.213658422,28.01607308,3.265404648,31.71370784,3.265084109
+15.33719824,1.308209325,13.4152599,2.421171921,13.51541783,3.113639847,15.5285179,3.214895321,17.31844901,3.266648636,20.60082716,3.26619972,22.30191234,3.301141865,25.24537718,3.23090421,28.08562267,3.247968329,31.87136114,3.230307989
+15.41344161,1.301221309,13.44856314,2.408243561,13.58260487,3.097007828,15.60571235,3.197722428,17.40454145,3.249199295,20.70323676,3.248752777,22.41277828,3.283508272,25.3708755,3.196492137,28.15534492,3.230625114,31.87136114,3.247643125
+15.49006399,1.294270622,13.51541783,2.395379532,13.61632354,3.080470699,15.68329053,3.163663771,17.49106187,3.231843162,20.80615546,3.231399029,22.52419534,3.265968873,25.49699768,3.179417548,28.29530909,3.213368198,32.02979815,3.213052768
+15.56706727,1.283916664,13.54896971,2.382588896,13.68401219,3.064015858,15.68329053,3.180641268,17.5780124,3.21457974,20.90958578,3.214137979,22.63616628,3.248523162,25.62374684,3.162434166,28.43596904,3.196203463,32.26893166,3.195883443
+15.64445335,1.277058412,13.61632354,2.369861905,13.75203734,3.047648913,15.76125437,3.146764541,17.62164962,3.197414811,21.01353027,3.196969132,22.74869384,3.213923432,25.75112608,3.145541503,28.57732824,3.179130417,32.42934505,3.178812106
+15.72222413,1.270236794,13.68401219,2.357202898,13.82040065,3.031369394,15.83960578,3.12995558,17.70924931,3.180335294,21.11799148,3.179891996,22.74869384,3.231170641,25.87913855,3.128739076,28.71939015,3.162148568,32.59055588,3.161831958
+15.80038151,1.260075104,13.75203734,2.34461151,13.8891038,3.015176836,15.91834668,3.113236407,17.75321233,3.16335322,21.22297198,3.162906079,22.86178079,3.196755731,26.00778738,3.112026401,28.86215827,3.145257431,32.67146157,3.144948686
+15.87892742,1.253344205,13.82040065,2.332087382,13.95814849,2.999070773,15.99747902,3.096606543,17.84146604,3.146455648,21.32847435,3.129218248,22.97542992,3.179679734,26.13707574,3.095403,29.00563611,3.128456521,32.83387599,3.128149426
+15.9578638,1.246649261,13.8891038,2.319630154,13.99279943,2.983056599,16.07700474,3.080065509,17.93015847,3.129648337,21.32847435,3.146010896,23.089644,3.162694951,26.26700681,3.078868395,29.1498272,3.111745356,32.9970978,3.111439901
+16.03719258,1.239990079,13.92358335,2.307243997,14.0623596,2.967122112,16.15692578,3.055425479,18.0192918,3.112930806,21.43450119,3.112503014,23.20442587,3.145800896,26.39758379,3.062422113,29.29473509,3.095123456,33.16113101,3.094819632
+16.11691572,1.233366467,13.99279943,2.294919474,14.09726926,2.951278535,16.23724413,3.030982565,18.10886823,3.096302574,21.54105511,3.095877067,23.31977833,3.128997083,26.52880989,3.046063681,29.44036333,3.078590345,33.32597965,3.078288144
+16.19703517,1.226778237,14.0275364,2.282665265,14.20251905,2.935508031,16.31796175,3.014792073,18.19888996,3.079763164,21.64813872,3.07933993,23.43570422,3.11228303,26.66068833,3.029792631,29.58671551,3.062145548,33.49164777,3.061844961
+16.27755291,1.2202252,14.09726926,2.270472033,14.23777664,2.919833265,16.39908063,2.998688065,18.2440685,3.063318116,21.75575466,3.062891129,23.55220639,3.095658258,26.79322235,3.013608495,29.73379522,3.045788593,33.65813945,3.045489612
+16.35847091,1.213707166,14.16734876,2.258343933,14.34407545,2.904230793,16.48060276,2.982670079,18.2893592,3.046960881,21.86390557,3.046530192,23.66928772,3.07912229,26.92641522,2.997510809,29.88160609,3.029519012,33.82545879,3.029221629
+16.43979116,1.207223949,14.23777664,2.246280617,14.37968446,2.888723038,16.56253015,2.966737656,18.38027817,3.030685038,21.97259411,3.03025665,23.78695107,3.062674651,27.06027022,2.981499112,29.95578685,3.013342254,33.9936099,3.013040543
+16.43979116,1.200780079,14.30855463,2.23428174,14.45116789,2.873292448,16.64486482,2.943004231,18.47164911,3.014496135,22.08182296,3.014070035,23.90519935,3.046314871,27.19479062,2.949743431,30.17943586,2.997240106,34.1625969,2.996945891
+16.52151567,1.194365915,14.37968446,2.222346956,14.52300668,2.857944284,16.72760878,2.927283689,18.56347428,2.998393708,22.1915948,2.997969884,24.02403545,3.030042478,27.19479062,2.965572944,30.32946207,2.981229855,34.33242397,2.980937211
+16.60364645,1.187986013,14.41538187,2.210480264,14.59520258,2.842678104,16.81076407,2.903865889,18.65575591,2.982377294,22.24668519,2.981961589,24.1434623,3.013857008,27.32997974,2.933986891,30.48023408,2.957380494,34.50309527,2.965014044
+16.68618551,1.184806526,14.48704275,2.19867262,14.66775738,2.827493471,16.89433274,2.888354411,18.7484963,2.966446435,22.41277828,2.966027127,24.26348284,2.997757995,27.46584091,2.918314517,30.63175561,2.941583159,34.674615,2.949175934
+16.76913488,1.175328264,14.55905988,2.186928048,14.74067287,2.812389949,16.97831684,2.872925791,18.8416977,2.950600673,22.46841775,2.950189397,24.38410002,2.981744977,27.60237746,2.90272586,30.78403037,2.925870209,34.84698738,2.933422425
+16.8524966,1.169050055,14.59520258,2.175250483,14.81395082,2.797367106,17.06271843,2.857579585,18.93536243,2.919174088,22.52419534,2.934436237,24.50531681,2.949986677,27.73959275,2.887220472,30.9370621,2.902463716,35.02021665,2.917753067
+16.93627273,1.162805382,14.66775738,2.163631025,14.88759305,2.782424509,17.1475396,2.842315354,18.93536243,2.934839554,22.63616628,2.918761462,24.50531681,2.965817496,27.87749016,2.871797908,31.09085458,2.886959729,35.19430706,2.902167409
+17.02046532,1.156594065,14.74067287,2.152073633,14.96160136,2.767561731,17.23278243,2.827132658,19.02949277,2.90358084,22.74869384,2.903170418,24.62713618,2.934228838,28.01607308,2.856457727,31.24541159,2.886948392,35.36926291,2.886665004
+17.10507644,1.150415928,14.81395082,2.140577978,15.03597759,2.752778344,17.31844901,2.80451605,19.12409105,2.888070885,22.86178079,2.887662655,24.74956113,2.918555171,28.15534492,2.841199488,31.40073691,2.871527282,35.54508848,2.871245408
+17.19010818,1.144270792,14.88759305,2.129143728,15.11072354,2.738073926,17.40454145,2.782080372,19.2191596,2.872643779,22.97542992,2.87223773,24.87259468,2.902965229,28.29530909,2.826022754,31.55683439,2.856188547,35.7217881,2.855908178
+17.27556262,1.138158481,14.92455133,2.117774715,15.14823574,2.7234534,17.49106187,2.767219431,19.31470074,2.857299079,23.089644,2.856895199,24.99623984,2.887458562,28.43596904,2.810927088,31.71370784,2.840931746,35.89936613,2.840652874
+17.36144187,1.13207882,14.99874337,2.106462273,15.22353975,2.708905626,17.5780124,2.752437873,19.41071683,2.842036346,23.20442587,2.841634624,25.12049965,2.872034727,28.57732824,2.795912058,31.87136114,2.825756441,36.07782692,2.825479059
+17.44774803,1.126031635,15.07330423,2.095210258,15.2992181,2.69443556,17.66539517,2.737735274,19.50721023,2.826855141,23.31977833,2.826455565,25.24537718,2.856693281,28.71939015,2.780977234,32.02979815,2.810662198,36.25717486,2.810386298
+17.53448324,1.120016752,15.14823574,2.084018347,15.33719824,2.680048051,17.75321233,2.72311121,19.60418331,2.811755029,23.43570422,2.811357587,25.3708755,2.841433784,28.86215827,2.766122186,32.18902277,2.795648584,36.43741437,2.795374157
+17.62164962,1.114033998,15.18584107,2.07289029,15.41344161,2.665732134,17.84146604,2.708565263,19.65285047,2.796741068,23.55220639,2.796340258,25.49699768,2.826255797,29.00563611,2.75134649,32.34903892,2.780715167,36.61854987,2.780442206
+17.70924931,1.108083202,15.26133202,2.061817605,15.49006399,2.651492687,17.93015847,2.694097016,19.75054755,2.781801815,23.66928772,2.781403146,25.62374684,2.811158887,29.07764228,2.736655093,32.50985054,2.765861519,36.80058583,2.765590016
+17.79728448,1.102164193,15.33719824,2.050804067,15.56706727,2.637329302,17.98953157,2.677320301,19.8487303,2.766942363,23.78695107,2.766545824,25.70859613,2.793653203,29.29473509,2.707501907,32.67146157,2.751087214,36.9835267,2.750817162
+17.88575728,1.096276802,15.41344161,2.03984936,15.64445335,2.623241574,18.0192918,2.665402429,19.89800455,2.752167689,23.84600191,2.751773266,25.75112608,2.781217484,29.29473509,2.722031455,32.91538572,2.736386457,37.16737701,2.73612322
+17.97466989,1.090420859,15.49006399,2.028953169,15.72222413,2.609229097,18.10886823,2.651164743,19.99692032,2.737466532,23.96454374,2.737074217,25.87913855,2.766361153,29.44036333,2.69303934,33.07901273,2.721769598,37.35214126,2.721507767
+18.0640245,1.084596196,15.56706727,2.018115182,15.80038151,2.595291471,18.19888996,2.637003111,20.09632782,2.722843904,24.08367485,2.722453684,26.00778738,2.75158418,29.58671551,2.678654027,33.32597965,2.707225503,37.537824,2.706970386
+18.1538233,1.078802647,15.60571235,2.007339028,15.87892742,2.581428294,18.2893592,2.622917124,20.19622949,2.708299385,24.20339818,2.70791125,26.13707574,2.73688614,29.73379522,2.664345556,33.49164777,2.692764412,37.63101123,2.692515944
+18.2440685,1.073040045,15.68329053,1.996616497,15.91834668,2.567644211,18.38027817,2.608906381,20.29662778,2.693832558,24.26348284,2.693451784,26.26700681,2.722266612,29.88160609,2.650113516,33.57479041,2.678385827,37.81808027,2.678133427
+18.33476233,1.067308225,15.72222413,1.98595514,15.99747902,2.553928717,18.47164911,2.594970478,20.39752517,2.679443008,24.38410002,2.679064269,26.39758379,2.707725177,30.03015175,2.635957498,33.74169541,2.664078788,37.91196323,2.663832967
+18.42590701,1.061607023,15.80038151,1.975346834,16.03719258,2.540291474,18.56347428,2.581109016,20.49892413,2.665130323,24.50531681,2.664753606,26.52880989,2.693261418,30.17943586,2.621877098,33.82545879,2.649853375,38.10042892,2.649603664
+18.51750478,1.055936274,15.87892742,1.964795194,16.11691572,2.526722089,18.65575591,2.567321598,20.60082716,2.65089409,24.62713618,2.650519386,26.66068833,2.678874919,30.32946207,2.60787191,33.9936099,2.635698747,38.2898315,2.63545037
+18.60955789,1.050295817,15.9578638,1.954299917,16.19703517,2.513225187,18.7484963,2.553607827,20.70323676,2.636733903,24.74956113,2.6363612,26.79322235,2.664565267,30.48023408,2.593941533,34.1625969,2.621619729,38.48017563,2.621372679
+18.70206862,1.041893619,16.03719258,1.943860702,16.27755291,2.499800381,18.8416977,2.539967311,20.80615546,2.622649355,24.87259468,2.622278643,26.92641522,2.650332054,30.63175561,2.580085567,34.33242397,2.607615916,38.67146599,2.607370185
+18.79503923,1.036328172,16.11691572,1.93347725,16.35847091,2.486447286,18.93536243,2.526399657,20.90958578,2.594715751,24.99623984,2.60827131,27.06027022,2.636174869,30.78403037,2.566303615,34.50309527,2.593686906,38.86370728,2.593442488
+18.88847201,1.030792455,16.19703517,1.923149264,16.43979116,2.473165519,19.02949277,2.512904478,20.90958578,2.608640042,25.12049965,2.5943388,27.19479062,2.622093307,30.9370621,2.552595282,34.674615,2.579832301,39.05690422,2.579589188
+18.98236925,1.025286307,16.23724413,1.912880201,16.52151567,2.459954698,19.12409105,2.492801645,21.06569612,2.580850582,25.24537718,2.580480712,27.32997974,2.608086964,31.09085458,2.538960174,34.84698738,2.566051702,39.25106158,2.565809888
+19.07673328,1.019809572,16.31796175,1.902662236,16.56253015,2.446819249,19.2191596,2.472859631,21.17041666,2.567064544,25.3708755,2.56669665,27.46584091,2.594155438,31.24541159,2.525397901,35.02021665,2.552344714,39.44618412,2.552104192
+19.1715664,1.014362091,16.35847091,1.892502569,16.60364645,2.43375394,19.31470074,2.459650445,21.22297198,2.55335716,25.43385841,2.55299123,27.60237746,2.573402611,31.40073691,2.511908072,35.13618098,2.536450721,39.64227664,2.538471708
+19.26687094,1.006247357,16.48060276,1.882389759,16.68618551,2.420753643,19.41071683,2.446511817,21.32847435,2.539717982,25.5602937,2.539354007,27.73959275,2.559656357,31.55683439,2.498490302,35.19430706,2.525159918,39.83934396,2.524912043
+19.36264927,1.000872321,16.56253015,1.872334664,16.76913488,2.407822789,19.50721023,2.433443371,21.43450119,2.526151661,25.68735751,2.52578963,27.87749016,2.539179517,31.71370784,2.485144205,35.36926291,2.511671361,40.03739093,2.51142481
+19.45890371,0.995525997,16.64486482,1.862333281,16.8524966,2.394961007,19.60418331,2.420444733,21.54105511,2.512657806,25.75112608,2.512302641,28.01607308,2.525616071,31.87136114,2.471869398,35.54508848,2.498254855,40.23642242,2.498009621
+19.55563666,0.990208231,16.68618551,1.852388958,16.93627273,2.382167929,19.70163845,2.407515529,21.64813872,2.499236031,25.87913855,2.498882763,28.15534492,2.512125078,32.02979815,2.458665501,35.7217881,2.484910016,40.43644333,2.484666092
+19.65285047,0.984918871,16.76913488,1.842494117,17.02046532,2.369443187,19.79957807,2.394655389,21.75575466,2.48588595,26.00778738,2.48553457,28.29530909,2.498706148,32.18902277,2.445532135,35.89936613,2.47163646,40.63745857,2.471393839
+19.75054755,0.979657765,16.8524966,1.832652132,17.06271843,2.356791043,19.89800455,2.381863943,21.86390557,2.472607181,26.13707574,2.472257678,28.43596904,2.485358898,32.34903892,2.432468922,36.07782692,2.458433807,40.83947308,2.458192482
+19.8487303,0.974424762,16.93627273,1.822862719,17.1475396,2.344201856,19.99692032,2.369140825,21.91818247,2.459404172,26.26700681,2.459051706,28.57732824,2.472082944,32.50985054,2.419475489,36.16738972,2.445306479,41.04249183,2.445061642
+19.94740112,0.969219711,17.02046532,1.813125598,17.23278243,2.331679916,20.09632782,2.356485669,22.02714083,2.44626686,26.39758379,2.445916277,28.71939015,2.458877906,32.67146157,2.406551463,36.34718289,2.432244472,41.24651982,2.432000943
+,,17.10507644,1.803440489,17.31844901,2.319224864,20.14621673,2.343902715,22.13664084,2.433199723,26.52880989,2.432851013,28.86215827,2.445743405,32.83387599,2.393696472,36.43741437,2.419256988,41.45156207,2.41901001
+,,17.19010818,1.793807115,17.40454145,2.306836343,20.29662778,2.331377796,22.24668519,2.420202386,26.66068833,2.419855539,29.00563611,2.432679065,32.9970978,2.380910148,36.61854987,2.406334129,41.6576236,2.40608847
+,,17.27556262,1.784225199,17.44774803,2.294518502,20.3638371,2.31685981,22.35727659,2.407274477,26.72687319,2.406934208,29.1498272,2.419684509,33.16113101,2.368192125,36.80058583,2.393480299,41.8647095,2.393235952
+,,17.31844901,1.774697951,17.53448324,2.282261953,20.39752517,2.306546499,22.41277828,2.394420325,26.85973623,2.394077173,29.29473509,2.406759366,33.37191619,2.349244405,36.9835267,2.38069513,41.96863817,2.380456762
+,,17.40454145,1.765218109,17.62164962,2.270070876,20.49892413,2.294225701,22.52419534,2.381630135,26.99325975,2.381288815,29.44036333,2.393903265,33.49164777,2.342959522,37.16737701,2.367978255,42.28197477,2.367736512
+,,17.49106187,1.755788906,17.70924931,2.257944918,20.60082716,2.281970717,22.63616628,2.368908265,27.12744703,2.368568769,29.58671551,2.381115837,33.57479041,2.330448793,37.35214126,2.355329309,42.55073562,2.348792438
+,,17.5780124,1.746410071,17.79728448,2.245883734,20.70323676,2.269781195,22.74869384,2.356254352,27.26230138,2.355916669,29.73379522,2.368396714,33.74169541,2.318000318,37.537824,2.34274793,42.70339892,2.342508763
+,,17.62164962,1.737084745,17.88575728,2.233886976,20.80615546,2.257656785,22.86178079,2.343668032,27.39782611,2.343332153,29.88160609,2.355745534,33.82545879,2.305622864,37.72442979,2.330233757,42.91568351,2.329995867
+,,17.70924931,1.727805821,17.97466989,2.221954302,20.90958578,2.24559714,22.97542992,2.331148943,27.53402455,2.330814858,30.03015175,2.343161931,33.9936099,2.293307,37.91196323,2.31778643,43.1290234,2.311356274
+,,17.79728448,1.718576461,18.0192918,2.210089706,21.01353027,2.233601913,23.089644,2.318696727,27.67090005,2.318364427,30.17943586,2.330645546,34.1625969,2.281056923,38.10042892,2.305405592,43.34342383,2.299009784
+,,17.88575728,1.709396403,18.10886823,2.198284148,21.11799148,2.221670761,23.20442587,2.306311027,27.80845598,2.305980502,30.32946207,2.318196019,34.33242397,2.268872282,38.2898315,2.293090889,43.66702453,2.280613597
+,,17.97466989,1.70026538,18.19888996,2.186541652,21.18792062,2.207835944,23.31977833,2.293991487,27.94669572,2.293662728,30.48023408,2.305812994,34.50309527,2.256752728,38.48017563,2.280841966,43.88409944,2.268431324
+,,18.0640245,1.691183133,18.2440685,2.17486615,21.22297198,2.198007943,23.43570422,2.269558388,28.08562267,2.281410751,30.63175561,2.293496114,34.674615,2.244697912,38.67146599,2.268658474,43.99304123,2.256318554
+,,18.1538233,1.6821494,18.33476233,2.163248744,21.32847435,2.186266922,23.43570422,2.281737754,28.22524024,2.26922422,30.78403037,2.281245027,34.84698738,2.232707488,38.86370728,2.256540061,44.21173681,2.244266058
+,,18.2440685,1.673163922,18.42590701,2.151693395,21.43450119,2.174588618,23.55220639,2.257435169,28.36555188,2.257102785,30.9370621,2.269059382,35.02021665,2.220781114,39.05690422,2.244486381,44.43151957,2.232277941
+,,18.2893592,1.664229709,18.51750478,2.140199771,21.54105511,2.162972695,23.72804646,2.245372299,28.50656102,2.245046099,31.09085458,2.25090727,35.19430706,2.208918446,39.25106158,2.232497088,44.65239489,2.220353861
+,,18.38027817,1.655339952,18.60955789,2.128767541,21.64813872,2.15141882,23.84600191,2.233378273,28.64827114,2.233053816,31.24541159,2.238883679,35.36926291,2.197119145,39.44618412,2.220571837,44.87436821,2.208493476
+,,18.47164911,1.646497681,18.70206862,2.117396379,21.75575466,2.139926662,23.90519935,2.221452677,28.79068571,2.221125592,31.40073691,2.226924313,35.54508848,2.185382871,39.64227664,2.208710287,45.097445,2.196696444
+,,18.56347428,1.637702643,18.79503923,2.106085958,21.86390557,2.128495892,24.02403545,2.209586422,28.93380826,2.209261084,31.55683439,2.209109276,35.7217881,2.173709289,39.83934396,2.196912098,45.32163073,2.184962429
+,,18.65575591,1.628954585,18.88847201,2.094835953,21.97259411,2.117126181,24.1434623,2.197783553,29.07764228,2.197459952,31.71370784,2.197308955,35.89936613,2.162098063,40.03739093,2.18517693,45.54693092,2.173291092
+,,18.70206862,1.620256437,18.93536243,2.083650133,22.08182296,2.105817203,24.26348284,2.18604373,29.1498272,2.18572615,31.87136114,2.185571668,36.07782692,2.15054886,40.23642242,2.173504448,45.77335111,2.1616821
+,,18.79503923,1.611601571,18.98236925,2.072524042,22.1915948,2.094568634,24.38410002,2.174366618,29.29473509,2.174050734,32.02979815,2.173897077,36.25717486,2.13906135,40.43644333,2.161894316,46.11509358,2.150130898
+,,18.88847201,1.602992936,19.07673328,2.061453314,22.30191234,2.083380151,24.50531681,2.162751881,29.44036333,2.162437684,32.18902277,2.162284848,36.43741437,2.127635202,40.63745857,2.150346202,46.34433818,2.13864562
+,,18.98236925,1.594430285,19.1715664,2.050441722,22.41277828,2.072251433,24.62713618,2.151199185,29.58671551,2.150886667,32.34903892,2.150734648,36.61854987,2.116270088,40.83947308,2.138859774,46.45938749,2.127225869
+,,19.07673328,1.585913373,19.26687094,2.03948895,22.52419534,2.055673754,24.74956113,2.139708201,29.73379522,2.139397352,32.50985054,2.139246144,36.80058583,2.104965683,41.04249183,2.127434702,46.69034362,2.115862942
+,,19.1715664,1.577441956,19.36264927,2.028594684,22.63616628,2.044693034,24.87259468,2.128278598,29.88160609,2.127969409,32.67146157,2.127819009,36.9835267,2.093721662,41.24651982,2.11607066,46.92244788,2.104560712
+,,19.26687094,1.56901579,19.45890371,2.017758612,22.74869384,2.03377097,24.99623984,2.116910047,30.03015175,2.11660251,32.83387599,2.116452914,37.16737701,2.082537704,41.45156207,2.10476732,47.15570596,2.104552448
+,,19.36264927,1.560634634,19.55563666,2.006980422,22.86178079,2.017501128,25.12049965,2.105602224,30.17943586,2.10529633,32.9970978,2.105147532,37.35214126,2.071413486,41.6576236,2.093524359,47.39012359,2.093310635
+,,19.45890371,1.552298247,19.65285047,1.996259806,22.97542992,2.006724314,25.24537718,2.094354803,30.32946207,2.094050543,33.16113101,2.09390254,37.537824,2.06034869,41.8647095,2.082341454,47.50776904,2.082132959
+,,19.50721023,1.544009422,19.75054755,1.985596456,23.089644,1.996005066,25.3708755,2.083167462,30.48023408,2.082864827,33.32597965,2.082717615,37.72442979,2.049342998,42.07282485,2.071218285,47.74393683,2.071010904
+,,19.60418331,1.535761842,19.8487303,1.974990065,23.20442587,1.985343076,25.49699768,2.07203988,30.55590092,2.071742929,33.49164777,2.071592436,37.91196323,2.038396095,42.28197477,2.060154531,48.10039164,2.059944214
+,,19.65285047,1.527561316,19.94740112,1.964440331,23.31977833,1.974738039,25.62374684,2.060971738,30.63175561,2.060680419,33.65813945,2.060526684,38.10042892,2.027507667,42.4921644,2.049149877,48.33950544,2.038003931
+,,19.79957807,1.519398613,19.99692032,1.953950786,23.43570422,1.964189651,25.75112608,2.049962719,30.78403037,2.049672956,33.82545879,2.049520042,38.2898315,2.016677401,42.59765072,2.038208007,48.33950544,2.048940683
+,,19.89800455,1.511282495,20.14621673,1.94350962,23.55220639,1.953697609,25.87913855,2.039012505,30.9370621,2.03872429,33.9936099,2.038572193,38.48017563,2.005904987,42.80940963,2.027320584,48.57980791,2.027117598
+,,19.99692032,1.503209731,20.2463664,1.933128044,23.66928772,1.943261612,26.00778738,2.028120784,31.09085458,2.027834109,34.1625969,2.027682825,38.67146599,1.995190115,43.02222121,2.016491317,48.82130495,2.021692288
+,,20.09632782,1.495180089,20.29662778,1.922805697,23.78695107,1.93288136,26.13707574,2.017287244,31.24541159,2.0170021,34.33242397,2.016851623,38.86370728,1.984532479,43.1290234,2.005723835,49.18580335,2.005515136
+,,20.2463664,1.487190419,20.34701393,1.912538469,23.90519935,1.922556556,26.20196074,2.006515511,31.40073691,2.006227951,34.50309527,2.006078278,39.05690422,1.973931772,43.34342383,1.995009931,49.43031289,1.994802347
+,,20.34701393,1.479246346,20.49892413,1.902318595,24.02403545,1.912286904,26.33221437,1.995797378,31.55683439,1.995511354,34.674615,1.995362481,39.25106158,1.963387691,43.55889007,1.984353257,49.55302309,1.984150678
+,,20.4481618,1.471344709,20.60082716,1.892157048,24.1434623,1.902072109,26.4631155,1.985136498,31.71370784,1.984852002,34.84698738,1.984703924,39.44618412,1.952899932,43.77542743,1.973753508,49.79935812,1.973552011
+,,20.60082716,1.463482405,20.65196848,1.882053474,24.26348284,1.891911877,26.52880989,1.974536442,31.87136114,1.974249588,35.02021665,1.974102301,39.64227664,1.942468196,43.99304123,1.963210378,50.04691772,1.963009958
+,,20.70323676,1.455664973,20.75463232,1.872000176,24.38410002,1.881805919,26.66068833,1.96398913,32.02979815,1.963703809,35.19430706,1.963557309,39.83934396,1.932092182,44.21173681,1.952723567,50.29570798,1.952524217
+,,20.80615546,1.447889299,20.85780651,1.862000579,24.50531681,1.871753943,26.79322235,1.953498159,32.18902277,1.953214362,35.36926291,1.953068644,40.03739093,1.921771594,44.43151957,1.942292773,50.54573501,1.942094488
+,,20.90958578,1.44015516,20.96149359,1.852054397,24.62713618,1.861755661,26.92641522,1.943063227,32.34903892,1.942780946,35.54508848,1.942636007,40.23642242,1.911506135,44.65239489,1.931917696,50.79700495,1.93172047
+,,21.01353027,1.432462335,21.06569612,1.842161343,24.74956113,1.851810787,27.06027022,1.932684035,32.50985054,1.932403262,35.7217881,1.932259097,40.43644333,1.90129551,44.87436821,1.92159804,51.049524,1.921401867
+,,21.06569612,1.424813399,21.17041666,1.832321135,24.87259468,1.841919035,27.19479062,1.922360285,32.75256811,1.922077238,35.89936613,1.921937617,40.63745857,1.891139427,45.097445,1.911333508,51.30329835,1.911138383
+,,21.22297198,1.417199741,21.27565777,1.82253349,24.99623984,1.832080121,27.32997974,1.912091682,32.91538572,1.911810146,36.07782692,1.911671271,40.83947308,1.881037595,45.2093989,1.901127538,51.55833425,1.900929723
+,,21.32847435,1.409629535,21.38142205,1.812798128,25.12049965,1.822293764,27.46584091,1.901877929,32.9970978,1.901601631,36.25717486,1.901459764,41.04249183,1.870989723,45.43414117,1.890972352,51.81463797,1.890775594
+,,21.43450119,1.402099767,21.4877121,1.803114768,25.24537718,1.812559682,27.60237746,1.891718735,33.16113101,1.891443913,36.43741437,1.891302804,41.24651982,1.860995524,45.66000067,1.880871412,52.07221581,1.880675705
+,,21.54105511,1.39461022,21.59453054,1.793483134,25.3708755,1.802877596,27.73959275,1.881613808,33.32597965,1.881340454,36.61854987,1.881200099,41.45156207,1.85105471,45.88698294,1.870824428,52.46098541,1.870626094
+,,21.64813872,1.38716068,21.64813872,1.783906451,25.49699768,1.793247228,27.87749016,1.871562859,33.49164777,1.871290965,36.80058583,1.8661508,41.6576236,1.841166996,46.11509358,1.860831112,52.85265756,1.860630183
+,,21.75575466,1.379750933,21.75575466,1.774377421,25.62374684,1.783668303,28.01607308,1.861565598,33.65813945,1.861295156,36.9835267,1.856182448,41.8647095,1.8313321,46.34433818,1.850891176,53.11539554,1.850691321
+,,21.80976307,1.372383461,21.86390557,1.764899292,25.75112608,1.774140545,28.15534492,1.851621739,33.82545879,1.851352742,37.16737701,1.846267344,42.07282485,1.821549738,46.5747224,1.841004336,53.37943963,1.840805549
+,,21.91818247,1.365052649,21.97259411,1.755471792,25.87913855,1.759947705,28.29530909,1.841730996,33.9936099,1.841463436,37.35214126,1.836405203,42.17727017,1.811823188,46.92244788,1.831166713,53.64479632,1.830972583
+,,22.02714083,1.357760996,22.08182296,1.746094651,26.00778738,1.750546655,28.43596904,1.831893087,34.1625969,1.831626956,37.537824,1.821714256,42.4921644,1.802141498,47.15570596,1.821385235,53.91147213,1.821192142
+,,22.08182296,1.350510943,22.1915948,1.736767599,26.13707574,1.741195822,28.57732824,1.822107729,34.33242397,1.82184302,37.72442979,1.81198327,42.59765072,1.792518582,47.39012359,1.811656006,54.17947363,1.82118499
+,,22.1915948,1.343296967,22.24668519,1.72749376,26.26700681,1.731894938,28.71939015,1.81237464,34.50309527,1.812111345,37.91196323,1.811976154,42.80940963,1.782943549,47.62570655,1.801978747,54.4488074,1.811456831
+,,22.24668519,1.336124148,22.35727659,1.718266068,26.39758379,1.722643736,28.86215827,1.797875934,34.674615,1.802431654,38.10042892,1.802297186,42.91568351,1.773423144,47.86246062,1.792353181,54.71948007,1.801780636
+,,22.35727659,1.328987021,22.46841775,1.709087667,26.52880989,1.708862863,29.00563611,1.788272284,34.84698738,1.792803669,38.2898315,1.792669919,43.1290234,1.763950112,48.10039164,1.782779032,54.99149829,1.792156129
+,,22.46841775,1.321888019,22.58011141,1.699958294,26.66068833,1.69973469,29.1498272,1.773966392,35.02021665,1.783227113,38.48017563,1.778328847,43.45102339,1.754524238,48.33950544,1.773256024,55.26486875,1.782583032
+,,22.58011141,1.314826936,22.69236031,1.690877687,26.79322235,1.690655278,29.29473509,1.764490459,35.19430706,1.773701712,38.67146599,1.764102501,43.77542743,1.745148732,48.57980791,1.763783885,55.40206317,1.773064552
+,,22.63616628,1.307806139,22.80516722,1.681845586,26.92641522,1.681624364,29.5134487,1.755061697,35.36926291,1.764227192,38.86370728,1.754679257,43.88409944,1.735830141,48.82130495,1.754362343,55.6774746,1.763593436
+,,22.74869384,1.300820278,22.86178079,1.672865015,27.06027022,1.672641691,29.73379522,1.736365282,35.54508848,1.754803283,39.05690422,1.745306349,44.10225346,1.726557918,49.06400251,1.744991128,55.81569331,1.754176356
+,,22.80516722,1.293874272,22.97542992,1.663929131,27.19479062,1.663707,29.73379522,1.745683319,35.7217881,1.745429712,39.25106158,1.735983508,44.21173681,1.717338597,49.30790656,1.735669971,56.09316096,1.744806134
+,,22.91853491,1.28696283,23.14696379,1.655037731,27.32997974,1.654820036,29.88160609,1.727090201,35.89936613,1.736106212,39.44618412,1.726710467,44.54182032,1.708161796,49.55302309,1.726398604,56.37200794,1.735485965
+,,23.03246616,1.280088306,23.26203059,1.646197074,27.46584091,1.645980542,30.03015175,1.717864665,36.07782692,1.726832515,39.64227664,1.717486958,44.87436821,1.699034033,49.79935812,1.717176762,56.65224111,1.726215581
+,,23.14696379,1.273250504,23.31977833,1.637406857,27.60237746,1.637188266,30.17943586,1.708688408,36.25717486,1.717608355,39.83934396,1.708312719,45.097445,1.689958363,50.17115864,1.708000826,56.93386735,1.707829813
+,,23.20442587,1.266451713,23.43570422,1.628660378,27.73959275,1.628442956,30.32946207,1.699561167,36.43741437,1.708433467,40.03739093,1.699187486,45.32163073,1.680931172,50.54573501,1.698873923,56.93386735,1.716994716
+,,23.31977833,1.259686753,23.55220639,1.619960621,27.87749016,1.615415673,30.48023408,1.690482682,36.61854987,1.699307589,40.23642242,1.690110996,45.54693092,1.671952202,50.79700495,1.689799109,57.2168936,1.698707159
+,,23.43570422,1.252957929,23.61067448,1.611310498,28.01607308,1.606786664,30.63175561,1.68145269,36.80058583,1.690230458,40.43644333,1.68108299,45.77335111,1.663021194,51.049524,1.680772769,57.50132681,1.689633235
+,,23.49388309,1.246267495,23.72804646,1.602703418,28.22524024,1.593929499,30.78403037,1.672470934,36.9835267,1.681201813,40.63745857,1.672103209,46.00089687,1.654137893,51.30329835,1.671794644,57.78717398,1.680607781
+,,23.61067448,1.239610352,23.84600191,1.594142314,28.36555188,1.585415263,30.9370621,1.663537155,37.16737701,1.672221397,40.83947308,1.663171394,46.22957378,1.645302043,51.55833425,1.662864478,58.07444214,1.671630538
+,,23.72804646,1.232988769,23.96454374,1.58562694,28.43596904,1.576949602,31.09085458,1.654651098,37.35214126,1.663288951,41.04249183,1.65428729,46.45938749,1.636513391,51.81463797,1.653982014,58.36313834,1.662701248
+,,23.84600191,1.226402557,24.08367485,1.577157053,28.57732824,1.568526066,31.24541159,1.645812507,37.537824,1.65440422,41.24651982,1.645450643,46.69034362,1.627771686,52.07221581,1.645146997,58.6532697,1.653819656
+,,23.96454374,1.219851526,24.20339818,1.568732409,28.71939015,1.560147526,31.40073691,1.637021128,37.72442979,1.645566947,41.45156207,1.641046814,46.92244788,1.619076675,52.3310741,1.636359173,58.94484334,1.644985506
+,,24.08367485,1.213335488,24.32371667,1.560352767,28.86215827,1.551813741,31.55683439,1.628276711,37.91196323,1.636776881,41.6576236,1.632280892,47.15570596,1.610428111,52.59121922,1.627618292,59.23786643,1.636198545
+,,24.1434623,1.206856626,24.44463328,1.552017886,29.00563611,1.547660519,31.71370784,1.619579003,38.10042892,1.628033768,41.8647095,1.623561795,47.39012359,1.601825744,52.85265756,1.618924101,59.53234618,1.627458521
+,,24.32371667,1.200407646,24.56615098,1.543727527,29.1498272,1.535279483,31.87136114,1.610927755,38.2898315,1.619337357,42.07282485,1.610573561,47.62570655,1.593269328,53.11539554,1.610276351,59.68013457,1.618768362
+,,24.44463328,1.193995471,24.68827277,1.535481452,29.29473509,1.527078535,32.02979815,1.602322719,38.48017563,1.6106874,42.28197477,1.601970417,47.86246062,1.584758618,53.37943963,1.601674795,59.9768129,1.610121444
+,,24.56615098,1.187617548,24.81100164,1.527279425,29.44036333,1.518921394,32.18902277,1.593763649,38.67146599,1.602083649,42.4921644,1.593413229,48.10039164,1.576293369,53.64479632,1.593119185,60.27496606,1.601520716
+,,24.62713618,1.181276013,24.99623984,1.519118229,29.58671551,1.510807825,32.34903892,1.585250298,38.86370728,1.593525855,42.70339892,1.58490175,48.33950544,1.567873339,53.91147213,1.584609277,60.57460138,1.592965929
+,,24.74956113,1.174966032,25.12049965,1.511003608,29.73379522,1.502737596,32.50985054,1.576782422,39.05690422,1.585013775,42.91568351,1.576435736,48.57980791,1.559498285,54.17947363,1.576144826,61.02684954,1.584453729
+,,24.87259468,1.168689758,25.24537718,1.502932334,29.88160609,1.49871572,32.67146157,1.56835978,39.25106158,1.576547163,43.1290234,1.568014945,48.82130495,1.551167968,54.4488074,1.567725589,61.33022257,1.575990108
+,,24.99623984,1.162447009,25.3708755,1.494904174,30.03015175,1.486726234,32.83387599,1.559982128,39.44618412,1.568125777,43.34342383,1.559639135,49.06400251,1.542882149,54.71948007,1.559351325,61.63510372,1.567571698
+,,25.12049965,1.156237607,25.5602937,1.486915978,30.17943586,1.478784641,32.9970978,1.551649227,39.64227664,1.559749375,43.55889007,1.551308066,49.30790656,1.534640591,54.99149829,1.551021793,61.94150048,1.559198256
+,,25.18286101,1.150063632,25.68735751,1.478973371,30.32946207,1.47088547,33.16113101,1.543360837,39.83934396,1.551417717,43.77542743,1.543021499,49.55302309,1.526443055,55.26486875,1.542736755,62.24942037,1.550869542
+,,25.30804855,1.143920378,25.81505297,1.471073192,30.48023408,1.463028493,33.32597965,1.535116721,39.93824469,1.543133593,43.99304123,1.534779196,49.79935812,1.518289309,55.53959817,1.534495973,62.55887098,1.542585317
+,,25.43385841,1.137809939,26.00778738,1.463212339,30.63175561,1.455213486,33.49164777,1.526916642,40.13678331,1.534890691,44.21173681,1.52658092,50.04691772,1.510179116,55.81569331,1.52629921,62.86985991,1.534345343
+,,25.62374684,1.131729918,26.07235142,1.455399207,30.78403037,1.447440223,33.65813945,1.518760366,40.33630889,1.52669182,44.43151957,1.518426437,50.29570798,1.502112246,56.09316096,1.518146231,63.18239482,1.526149385
+,,25.75112608,1.125684596,26.26700681,1.447622111,30.9370621,1.439708483,33.74169541,1.510650623,40.53682635,1.518536744,44.65239489,1.510315512,50.54573501,1.494088466,56.37200794,1.510036803,63.49648337,1.517997207
+,,25.81505297,1.119673765,26.39758379,1.439889399,31.09085458,1.435855295,33.90943011,1.502581234,40.7383406,1.510425231,44.87436821,1.502247913,50.67121423,1.486110465,56.65224111,1.501970693,63.81213331,1.509888575
+,,25.94338322,1.113692843,26.52880989,1.432197993,31.24541159,1.424368683,34.1625969,1.494552015,40.94085662,1.502357046,45.097445,1.494223409,50.92310795,1.478172161,56.93386735,1.49394767,64.12935238,1.501823257
+,,26.13707574,1.107741695,26.66068833,1.424547672,31.40073691,1.416760184,34.33242397,1.48656862,41.14437936,1.494331958,45.32163073,1.486241768,51.049524,1.470279148,57.2168936,1.485967502,64.4481484,1.493801021
+,,26.26700681,1.10182451,26.79322235,1.416938216,31.55683439,1.409192326,34.50309527,1.478627869,41.34891385,1.486349738,45.54693092,1.478302763,51.30329835,1.46242541,57.50132681,1.478029962,64.76852919,1.485821637
+,,26.39758379,1.095938933,26.92641522,1.409369407,31.71370784,1.401664893,34.58874882,1.470732422,41.55446511,1.478410156,45.77335111,1.470406166,51.68632724,1.454610768,57.78717398,1.470134822,65.09050264,1.477884876
+,,26.52880989,1.090084795,27.06027022,1.401841028,31.87136114,1.394177669,34.84698738,1.462873391,41.76103819,1.470512985,46.00089687,1.462551749,52.07221581,1.446837884,58.07444214,1.462281855,65.41407667,1.469990511
+,,26.66068833,1.084261928,27.19479062,1.394352864,32.02979815,1.38673044,35.02021665,1.455059212,41.96863817,1.462657998,46.22957378,1.454739289,52.2014845,1.439112187,58.36313834,1.454470836,65.73925923,1.462138315
+,,26.79322235,1.078470164,27.32997974,1.386904699,32.18902277,1.379322991,35.19430706,1.447286774,42.17727017,1.45484497,46.45938749,1.446968559,52.59121922,1.431422122,58.6532697,1.446701541,66.06605832,1.454328062
+,,26.92641522,1.072709338,27.46584091,1.379496319,32.34903892,1.37195511,35.36926291,1.439555853,42.3869393,1.447073676,46.69034362,1.439239339,52.92550969,1.419969426,58.94484334,1.438973746,66.39448197,1.446559529
+,,27.12744703,1.06697719,27.60237746,1.372127512,32.50985054,1.364626586,35.54508848,1.431866229,42.59765072,1.439343894,46.92244788,1.431551405,53.11539554,1.416170612,59.23786643,1.431287231,66.72453827,1.442688006
+,,27.26230138,1.061277756,27.80845598,1.364795388,32.67146157,1.357337209,35.63332876,1.424220476,42.70339892,1.431658212,47.15570596,1.423904537,53.37943963,1.408605904,59.53234618,1.423641775,67.05623531,1.43498165
+,,27.39782611,1.055608766,27.94669572,1.357505109,32.83387599,1.350086769,35.81046704,1.416612768,42.91568351,1.424010774,47.39012359,1.416298517,53.64479632,1.401081603,59.82828984,1.416037158,67.55687516,1.423499233
+,,27.53402455,1.049970058,28.08562267,1.350253772,32.9970978,1.342875058,35.9884859,1.409045697,43.1290234,1.416404186,47.62570655,1.408733125,53.91147213,1.393597495,60.12570467,1.408473163,67.89270987,1.415895377
+,,27.67090005,1.04436147,28.22524024,1.343041169,33.16113101,1.33570187,36.25717486,1.401516296,43.34342383,1.40883823,47.86246062,1.401208146,54.17947363,1.386153365,60.42459799,1.400949571,68.06125277,1.408334904
+,,27.73959275,1.038784881,28.29530909,1.335869716,33.32597965,1.328566999,36.43741437,1.394029866,43.55889007,1.401312689,48.10039164,1.393723362,54.4488074,1.378748999,60.72497715,1.393466169,68.39959481,1.400812051
+,,27.94669572,1.033234012,28.43596904,1.328733948,33.49164777,1.321470239,36.61854987,1.386583426,43.77542743,1.393827347,48.33950544,1.386278559,54.71948007,1.371384184,61.02684954,1.38602274,68.7396188,1.400806551
+,,28.08562267,1.027714823,28.57732824,1.321636297,33.65813945,1.314411389,36.70945501,1.379179471,43.99304123,1.386381989,48.57980791,1.378873524,54.99149829,1.36405871,61.33022257,1.378619071,69.0813331,1.393323912
+,,28.22524024,1.022225115,28.71939015,1.31457656,33.82545879,1.307390244,36.80058583,1.37181505,44.21173681,1.378976401,48.82130495,1.371508044,55.26486875,1.356772366,61.63510372,1.371254951,69.25282673,1.385883964
+,,28.36555188,1.016764731,28.86215827,1.307554533,33.9936099,1.300406604,36.9835267,1.364487274,44.43151957,1.371610372,49.06400251,1.364181908,55.40206317,1.349527592,61.94150048,1.363930167,69.4247461,1.378483743
+,,28.50656102,1.011333515,29.00563611,1.300570015,34.1625969,1.29000356,37.16737701,1.357198641,44.65239489,1.364283689,49.30790656,1.356894906,55.6774746,1.342318869,62.24942037,1.356644509,69.76986626,1.371120345
+,,28.57732824,1.005933285,29.07764228,1.293625346,34.3797478,1.283111394,37.35214126,1.349948941,44.98576833,1.356993479,49.55302309,1.349646829,55.81569331,1.335151273,62.55887098,1.349397769,70.11670207,1.363796281
+,,28.71939015,1.000559927,29.22219132,1.286715233,34.50309527,1.279678713,37.537824,1.342737966,45.32163073,1.349742225,49.79935812,1.342437468,56.09316096,1.328019343,62.86985991,1.342189739,70.56239139,1.360144778
+,,28.86215827,0.995215272,29.36745894,1.279842032,34.674615,1.272843099,37.72442979,1.335565511,45.54693092,1.342532355,50.04691772,1.335266617,56.37200794,1.320925509,63.18239482,1.335020212,70.81555475,1.356506012
+,,29.00563611,0.989899166,29.5134487,1.273005545,34.84698738,1.266043998,37.91196323,1.328431368,45.77335111,1.335360997,50.29570798,1.328134071,56.65224111,1.313869568,63.49648337,1.327888982,70.99135357,1.349262661
+,,29.1498272,0.984611456,29.6601642,1.266205577,35.02021665,1.255915849,38.10042892,1.321335333,46.00089687,1.328227947,50.54573501,1.321039624,56.93386735,1.306851317,63.81213331,1.320795844,71.34426156,1.342055352
+,,29.29473509,0.979351992,29.80760904,1.259441931,35.24281892,1.249205805,38.2898315,1.314277203,46.22957378,1.321132999,50.79700495,1.313983074,57.2168936,1.299870556,64.12935238,1.313740596,71.6989239,1.334886543
+,,29.36745894,0.974122535,29.88160609,1.252716874,35.36926291,1.245863831,38.48017563,1.307256775,46.45938749,1.314075949,51.049524,1.306964217,57.50132681,1.292927083,64.4481484,1.306723034,72.23422592,1.32775342
+,,29.5134487,0.968919099,30.03015175,1.246025281,35.54508848,1.239208844,38.67146599,1.300273848,46.69034362,1.307056596,51.30329835,1.299982852,57.78717398,1.286020701,64.76852919,1.299742958,72.5933124,1.317131605
+,,,,30.17943586,1.239369432,35.7217881,1.232589406,38.86370728,1.293328221,46.80625188,1.300077291,51.55833425,1.289583198,58.07444214,1.279151209,65.09050264,1.292800167,72.95418395,1.31009593
+,,,,30.32946207,1.232749136,35.89936613,1.226005327,38.960186,1.286422221,47.03893233,1.293132714,51.88605929,1.282693278,58.36313834,1.272318413,65.41407667,1.285894462,73.41790943,1.303096416
+,,,,30.40475462,1.226166611,36.07782692,1.219456418,39.05690422,1.279553097,47.15570596,1.286227758,52.07221581,1.279261716,58.6532697,1.265522114,65.73925923,1.279025645,73.68131779,1.299610269
+,,,,30.55590092,1.21961684,36.25717486,1.212942491,39.25106158,1.276128544,47.50776904,1.279354649,52.3310741,1.272428329,58.94484334,1.25876212,66.06605832,1.272193519,73.86423084,1.292670725
+,,,,30.7077986,1.213102056,36.43741437,1.206463359,39.50055676,1.269310509,47.74393683,1.272520766,52.59121922,1.265631444,59.23786643,1.252038235,66.39448197,1.265397888,74.04759797,1.285768236
+,,,,30.86045138,1.206622072,36.61854987,1.200018836,39.64227664,1.265914749,47.98127865,1.265723387,52.85265756,1.255506595,59.53234618,1.245350267,66.72453827,1.258638557,74.41569898,1.285763187
+,,,,31.01386301,1.200176702,36.80058583,1.193608738,39.83934396,1.252431604,48.21980032,1.258962317,53.18860983,1.248798738,59.82828984,1.238698023,67.05623531,1.251915332,74.78562987,1.278895072
+,,,,31.09085458,1.193768104,36.9835267,1.187232881,39.83934396,1.259152657,48.57980791,1.252234904,53.37943963,1.245457853,60.12570467,1.232081314,67.38958128,1.24522802,75.15739973,1.272063643
+,,,,31.16803728,1.187393726,37.16737701,1.180891081,40.03739093,1.245741535,48.82130495,1.245545885,53.64479632,1.238805035,60.42459799,1.225499949,67.72458435,1.23857643,75.53101772,1.261887338
+,,,,31.32297797,1.181051067,37.35214126,1.174583157,40.23642242,1.239087201,48.9425033,1.238895029,53.91147213,1.232187754,60.72497715,1.218953739,68.06125277,1.23196037,76.01112257,1.25514539
+,,,,31.47868889,1.174742289,37.537824,1.168308928,40.43644333,1.23577095,49.18580335,1.232277268,54.17947363,1.22560582,61.02684954,1.212442497,68.39959481,1.225379651,76.28383485,1.251787526
+,,,,31.63517388,1.16846721,37.72442979,1.162068213,40.69347326,1.229168535,49.43031289,1.225694856,54.4488074,1.219059045,61.33022257,1.205966036,68.7396188,1.218834084,76.66305251,1.245100897
+,,,,31.79243677,1.16222565,37.91196323,1.155860835,40.83947308,1.225880167,49.79935812,1.219145211,54.71948007,1.212547241,61.63510372,1.19952417,69.0813331,1.212323481,76.85336768,1.238452417
+,,,,31.87136114,1.1560197,38.03750315,1.148663044,41.04249183,1.219331926,49.92298447,1.212635327,54.99149829,1.20607022,61.94150048,1.193116714,69.4247461,1.205847656,77.0441553,1.231839438
+,,,,32.02979815,1.14984463,38.10042892,1.143549864,41.24651982,1.212818664,50.17115864,1.206157836,55.26486875,1.199627797,62.24942037,1.186743485,69.76986626,1.199406422,77.42715262,1.231834601
+,,,,32.18902277,1.143702546,38.2898315,1.137441404,41.45156207,1.206340193,50.42056651,1.199714946,55.53959817,1.196417154,62.55887098,1.180404299,70.11670207,1.192999595,77.81205387,1.225254554
+,,,,32.34903892,1.137593271,38.48017563,1.131365574,41.6576236,1.199896329,50.67121423,1.193306471,55.81569331,1.186846008,62.86985991,1.174098975,70.46526204,1.186626992,78.19886851,1.218709655
+,,,,32.59055588,1.131514407,38.67146599,1.125322198,41.8647095,1.193486885,50.92310795,1.186932228,56.09316096,1.180506275,63.18239482,1.167827332,70.81555475,1.180288428,78.58760607,1.212199717
+,,,,32.75256811,1.125470237,38.86370728,1.113336492,42.07282485,1.187111678,51.17625387,1.180592034,56.37200794,1.174200406,63.49648337,1.164701798,71.16758882,1.173983723,78.97827609,1.205724553
+,,,,32.91538572,1.119458353,38.86370728,1.119311105,42.28197477,1.180770526,51.43065821,1.174285708,56.73033059,1.171056538,63.81213331,1.155384371,71.52137289,1.167712696,79.37088819,1.199283977
+,,,,32.9970978,1.113480768,39.05690422,1.107389422,42.4921644,1.174463246,51.68632724,1.168013067,56.93386735,1.167923636,64.12935238,1.149212695,71.87691568,1.161475167,79.76545202,1.192877804
+,,,,33.24345314,1.107530752,39.25106158,1.101474119,42.70339892,1.168189657,51.94326723,1.161773933,57.2168936,1.161684979,64.4481484,1.143073986,72.23422592,1.155270956,80.16197728,1.186505851
+,,,,33.40871102,1.101614695,39.44618412,1.095590414,42.91568351,1.16194958,52.2014845,1.155568126,57.50132681,1.155479648,64.76852919,1.136968068,72.5933124,1.149099886,80.56047373,1.180167935
+,,,,33.57479041,1.095730238,39.64227664,1.089738137,43.1290234,1.155742835,52.46098541,1.149395469,57.86682785,1.146234746,65.09050264,1.130894766,72.95418395,1.14296178,80.96095115,1.173863873
+,,,,33.74169541,1.089877215,39.83934396,1.083917122,43.34342383,1.149569244,52.72177634,1.143255784,58.07444214,1.143168248,65.41407667,1.124853906,73.31684944,1.136856461,81.36341941,1.167593486
+,,,,33.90943011,1.084055457,40.03739093,1.0781272,43.55889007,1.143428631,52.98386369,1.137148895,58.36313834,1.137061827,65.73925923,1.118845314,73.68131779,1.130783756,81.76788839,1.161356594
+,,,,34.07799865,1.078264796,40.23642242,1.072368206,43.77542743,1.137320819,53.24725392,1.131074627,58.6532697,1.130988024,66.06605832,1.112868817,74.04759797,1.124743488,82.17436805,1.155153016
+,,,,34.24740517,1.072505067,40.43644333,1.069498156,43.99304123,1.131245633,53.37943963,1.125035015,58.94484334,1.124946665,66.39448197,1.106924245,74.41569898,1.118735486,82.58286837,1.148982576
+,,,,34.41765383,1.066776105,40.69347326,1.063784095,44.21173681,1.125202898,53.64479632,1.119025455,59.23786643,1.115947272,66.89018119,1.101009266,74.78562987,1.112759576,82.9933994,1.142845097
+,,,,34.58874882,1.061077745,40.83947308,1.060938176,44.43151957,1.119192441,53.91147213,1.113047997,59.53234618,1.107019873,67.22270167,1.095128044,75.15739973,1.106815587,83.19942959,1.136742633
+,,,,34.76069435,1.0497763,41.04249183,1.055271,44.65239489,1.113214091,54.17947363,1.107102467,59.82828984,1.101106544,67.55687516,1.089278237,75.53101772,1.10090335,83.82059404,1.130668316
+,,,,34.76069435,1.055409823,41.24651982,1.049634096,44.87436821,1.107267675,54.4488074,1.101188697,60.12570467,1.101102221,67.89270987,1.083459678,75.90649302,1.095022693,84.23727798,1.124628665
+,,,,34.93349464,1.044168747,41.45156207,1.044027303,45.097445,1.101353022,54.71948007,1.095306517,60.42459799,1.095220502,68.23021407,1.0776722,76.28383485,1.08917345,84.65603332,1.118621276
+,,,,35.10715395,1.038591148,41.6576236,1.041233103,45.32163073,1.095469964,54.99149829,1.089455757,60.57460138,1.08937234,68.7396188,1.071913532,76.66305251,1.08335545,85.07687035,1.112645976
+,,,,35.36926291,1.033041314,41.8647095,1.035671185,45.54693092,1.089618331,55.26486875,1.08363625,61.02684954,1.083551151,69.0813331,1.066187729,77.0441553,1.077568529,85.49979942,1.106702595
+,,,,35.54508848,1.027523154,42.07282485,1.030138977,45.77335111,1.083797955,55.53959817,1.077847828,61.33022257,1.074882916,69.4247461,1.060492512,77.42715262,1.071812519,85.92483093,1.100790961
+,,,,35.7217881,1.02203447,42.28197477,1.02463632,46.00089687,1.07800867,55.81569331,1.072090327,61.63510372,1.069141252,69.76986626,1.054827717,77.81205387,1.066087256,86.35197532,1.094910904
+,,,,35.89936613,1.016575105,42.4921644,1.019163057,46.22957378,1.072250309,56.09316096,1.06636358,61.94150048,1.060588293,70.11670207,1.049193181,78.19886851,1.060392576,86.78124312,1.089062258
+,,,,35.9884859,1.011146887,42.70339892,1.01371903,46.45938749,1.066522708,56.37200794,1.060667423,62.24942037,1.054922986,70.46526204,1.043588743,78.58760607,1.054728314,87.21264486,1.083244852
+,,,,36.25717486,1.005743705,42.91568351,1.008304083,46.69034362,1.060825701,56.65224111,1.055001694,62.55887098,1.052099626,70.81555475,1.038014242,78.97827609,1.049094309,87.64619117,1.077458522
+,,,,36.34718289,1.000373323,43.1290234,1.00291806,46.92244788,1.055159126,56.93386735,1.049366228,62.86985991,1.046479662,71.16758882,1.032469518,79.37088819,1.0434904,88.08189269,1.0717031
+,,,,36.61854987,0.995027711,43.34342383,0.997560809,47.15570596,1.04952282,57.2168936,1.043760866,63.18239482,1.038107993,71.52137289,1.026954412,79.76545202,1.037916424,88.51976015,1.065978421
+,,,,36.80058583,0.989712607,43.55889007,0.989580482,47.39012359,1.043916621,57.50132681,1.038185446,63.49648337,1.032562768,71.87691568,1.021468766,80.16197728,1.032372222,88.9598043,1.060284322
+,,,,36.9835267,0.984425894,43.77542743,0.984294475,47.62570655,1.038340369,57.78717398,1.032639807,63.81213331,1.027047164,72.23422592,1.016012423,80.56047373,1.026857636,89.40203598,1.054620639
+,,,,37.16737701,0.979167421,43.99304123,0.979036704,47.86246062,1.032793903,58.07444214,1.027123792,64.12935238,1.021561023,72.5933124,1.010585225,80.96095115,1.021372507,89.84646606,1.048987209
+,,,,37.35214126,0.973937037,44.21173681,0.973807018,48.10039164,1.027277064,58.36313834,1.021637241,64.4481484,1.018826951,72.95418395,1.005187018,81.36341941,1.015916678,90.29310546,1.043383871
+,,,,37.44486753,0.968736494,44.43151957,0.968605268,48.33950544,1.021789694,58.79887579,1.016178002,64.76852919,1.013384719,73.31684944,0.999817646,81.76788839,1.010489992,90.74196516,1.037810465
+,,,,37.63101123,0.963561829,44.65239489,0.963431304,48.57980791,1.016331637,59.09117325,1.01074992,65.09050264,1.007971558,73.68131779,0.994476955,82.17436805,1.005092293,91.19305621,1.032266829
+,,,,,,,,48.82130495,1.010902734,59.38492377,1.005350833,65.41407667,0.999907947,74.04759797,0.989164793,82.58286837,0.999723427,91.6463897,1.026752806
+,,,,,,,,49.06400251,1.005502831,59.68013457,0.999980586,65.73925923,0.994566774,74.41569898,0.983881007,82.9933994,0.99438324,92.10197677,1.021268237
+,,,,,,,,49.30790656,1.000131772,59.9768129,0.994639026,66.06605832,0.989254132,74.78562987,0.978625444,83.40597125,0.989071578,92.55982863,1.015812965
+,,,,,,,,49.55302309,0.994789403,60.42459799,0.989324055,66.39448197,0.983969868,75.15739973,0.973397955,83.82059404,0.98378829,93.01995653,1.010386833
+,,,,,,,,49.79935812,0.989475572,60.72497715,0.984039418,66.72453827,0.978713831,75.53101772,0.96819839,84.23727798,0.978533223,93.4823718,1.004989685
+,,,,,,,,50.04691772,0.984190125,60.87572622,0.978784931,67.05623531,0.97348587,,,84.65603332,0.973306227,93.9470858,0.999621367
+,,,,,,,,50.29570798,0.978932912,61.02684954,0.973558502,67.38958128,0.968285835,,,85.07687035,0.968107151,94.41410995,0.994281725
+,,,,,,,,50.54573501,0.973703781,61.38093117,0.96641588,67.72458435,0.963113577,,,85.49979942,0.962935848,94.88345575,0.988970606
+,,,,,,,,50.79700495,0.968502582,,,67.89270987,0.957970828,,,,,95.35513473,0.983687857
+,,,,,,,,51.049524,0.963329166,,,,,,,,,95.82915849,0.978433326
+,,,,,,,,,,,,,,,,,,96.3055387,0.973206863
+,,,,,,,,,,,,,,,,,,96.78428705,0.968008319
+,,,,,,,,,,,,,,,,,,97.26541533,0.962837543
\ No newline at end of file
diff --git a/Assignments/A2/A2Soln/src/input b/Assignments/A2/A2Soln/src/input
new file mode 100644
index 00000000..aba70b22
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/input
@@ -0,0 +1,7 @@
+1,2,3
+1,2,2
+1,1,1,5,1,10
+2,2,1.5,7,2,40
+3,3,2,20,3,100
+,,2.5,40,,
+,,3,78,,
\ No newline at end of file
diff --git a/Assignments/A2/A2Soln/src/test_All.py b/Assignments/A2/A2Soln/src/test_All.py
new file mode 100644
index 00000000..e4d87189
--- /dev/null
+++ b/Assignments/A2/A2Soln/src/test_All.py
@@ -0,0 +1,228 @@
+from CurveADT import *
+import Data
+import Load
+import Plot
+import Exceptions
+import SeqServices
+
+from pytest import *
+
+class TestCurveADT:
+  def test_minD(self):
+    curve = CurveT([0, 50, 99], [1, 2, 3], 1)
+    assert curve.minD() == 0
+
+  def test_maxD(self):
+    curve = CurveT([0, 50, 99], [1, 2, 3], 1)
+    assert curve.maxD() == 99
+    
+  def test_order(self):
+    curve = CurveT([0, 50, 99], [1, 2, 3], 1)
+    assert curve.order() == 1
+
+  def test_raises_indepVarNotAscending(self):
+    with raises(Exceptions.IndepVarNotAscending):
+      CurveT([ 0, -1 ], [ 0, 0 ], 1)
+    
+  def test_raises_SeqSizeMismatch(self):
+    with raises(Exceptions.SeqSizeMismatch):
+      CurveT([ 0 ], [ 0, 0 ], 1)
+
+  def test_raises_OutOfDomain_eval_below(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.eval(-1)
+
+  def test_raises_OutOfDomain_eval_above(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.eval(3)
+
+  def test_raises_OutOfDomain_dfdx_below(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.dfdx(-1)
+
+  def test_raises_OutOfDomain_dfdx_above(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.dfdx(3)
+
+  def test_raises_OutOfDomain_d2fdx2_below(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.d2fdx2(-1)
+
+  def test_raises_OutOfDomain_d2fdx2_above(self):
+    curve = CurveT([ 0, 1, 2 ], [ 0, 0, 0 ], 1)
+    with raises(Exceptions.OutOfDomain):
+      curve.d2fdx2(3)
+
+  def test_eval_linear(self):
+    curve = CurveT([0, 1, 3], [0, 1, 3], 1)
+    assert curve.eval(2) == approx(2, 0.1)
+    
+  def test_eval_quadratic(self):
+    curve = CurveT([0, 1, 2], [1, 0, 1], 2)
+    assert curve.eval(0.5) == approx(1.25, 0.1)
+
+  def test_dfdx(self):
+    curve = CurveT([0, 1], [0, 1000], 1)
+    assert curve.dfdx(0) == approx(1, 0.0001)
+
+  def test_dfdx_2(self):
+    curve = CurveT([0, 1], [0, 1], 1)
+    assert curve.dfdx(0) == approx(0.001, 0.0001)
+
+  def test_d2fdx2(self):
+    curve = CurveT([0, 1], [0, 1], 1)
+    assert curve.d2fdx2(0) == approx(0, 0.0001)
+
+  def test_d2fdx2_2(self):
+    curve = CurveT([0, 1], [0, 1000], 1)
+    assert curve.d2fdx2(0) == approx(0, 0.0001)
+
+class TestData:
+  def test_constructor_S(self):
+    Data.Data.init()
+    assert Data.Data.S == []
+
+  def test_constructor_Z(self):
+    Data.Data.init()
+    assert Data.Data.Z == []
+
+  def test_constructor_MAX(self):
+    Data.Data.init()
+    assert Data.Data.MAX_SIZE == 10
+
+  def test_add(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2], [0,1,2], 1)
+    test_curve_b = CurveT([0,1,2], [0,1,2], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    assert Data.Data.S[0] == test_curve_a
+    assert Data.Data.S[1] == test_curve_b
+
+  def test_add_full_exception(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2], [0,1,2], 1)
+    with raises(Full):
+      for x in range(11):
+        Data.Data.add(test_curve_a, x)
+
+  def test_getC(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2], [0,1,2], 1)
+    test_curve_b = CurveT([0,1,2], [0,1,2], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    assert Data.Data.getC(0) == test_curve_a
+    assert Data.Data.getC(1) == test_curve_b
+
+  def test_getC_empty(self):
+    Data.Data.init()
+    with raises(InvalidIndex): 
+      Data.Data.getC(0)
+
+  def test_getC_invalid_index_below(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2], [0,1,2], 1)
+    test_curve_b = CurveT([0,1,2], [0,1,2], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    with raises(InvalidIndex):
+      Data.Data.getC(-1)
+
+  def test_getC_invalid_index_above(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2], [0,1,2], 1)
+    test_curve_b = CurveT([0,1,2], [0,1,2], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    with raises(InvalidIndex):
+      Data.Data.getC(2)
+
+  def test_add_IndepVarNotAscending_exception(self):
+    Data.Data.init()
+    test_curve_a = CurveT([-1], [-1], 1)
+    Data.Data.add(test_curve_a, 3)
+    with raises(IndepVarNotAscending):
+      Data.Data.add(test_curve_a, 1)
+
+  def test_eval(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2,3], [0,1,2,3], 1)
+    test_curve_b = CurveT([0,1,2,3], [1,2,3,4], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    assert Data.Data.eval(1, 0) == approx(1, 0.005)
+
+  def test_eval_OutOfDomain_exception(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2,3], [0,1,2,3], 1)
+    test_curve_b = CurveT([0,1,2,3], [1,2,3,4], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    with raises(OutOfDomain):
+      Data.Data.eval(0, 4)
+
+  def test_slice(self):
+    Data.Data.init()
+    test_curve_a = CurveT([0,1,2,3], [0,1,2,3], 1)
+    test_curve_b = CurveT([0,1,2,3], [1,2,3,4], 1)
+    Data.Data.add(test_curve_a, 0)
+    Data.Data.add(test_curve_b, 1)
+    new_curve = Data.Data.slice(1, 1)
+    assert new_curve.minD()  == 0
+    assert new_curve.maxD()  == 1
+    assert new_curve.order() == 1
+
+class TestSeqServices:
+  def test_index(self):
+    assert SeqServices.index([1,2,3,4,5,6], 3.5) == 2
+    assert SeqServices.index([1,2], 1.5) == 0
+
+  def test_is_ascending_empty(self):
+    assert SeqServices.isAscending([])
+
+  def test_isAscending_unit(self):
+    assert SeqServices.isAscending([ 1 ])
+
+  def test_isAscending_two(self):
+    assert SeqServices.isAscending([ 1, 2 ])
+
+  def test_isAscending_repeat(self):
+    assert SeqServices.isAscending([ 0, 0, 0 ])
+
+  def test_isAscending_descending(self):
+    assert not SeqServices.isAscending([ 2, 1, 0 ])
+
+  def test_isInBounds(self):
+    assert SeqServices.isInBounds([ 1, 2 ], 1.5)
+    assert SeqServices.isInBounds([ 1, 2 ], 2)
+    assert SeqServices.isInBounds([ 1 ], 1)
+
+  def test_isInBounds_below(self):
+    assert not SeqServices.isInBounds([ 1, 2 ], 0.9999)
+
+  def test_isInBounds_In(self):
+    assert SeqServices.isInBounds([ 1, 2 ], 1.000)
+    assert SeqServices.isInBounds([ 1, 2 ], 1.00001)
+    assert SeqServices.isInBounds([ 1, 2 ], 1.9999)
+    assert SeqServices.isInBounds([ 1, 2 ], 1.5)
+
+  def test_isInBounds_above(self):
+    assert not SeqServices.isInBounds([ 1, 2 ], 2.0001)
+
+  def test_isInBounds_negative(self):
+    assert not SeqServices.isInBounds([ 1, 2 ], -1)
+    assert not SeqServices.isInBounds([ 1, 2 ], -2)
+
+  def test_interpLin(self):
+    assert SeqServices.interpLin(0, 1, 1, 2, 0.5) == 1.5
+
+  def test_interpQuad(self):
+    # -3.5 + 2.875x + 1.01786x^2
+    assert SeqServices.interpQuad(0, -3.5, 1, 0.39286, 2, 6.32144, 3) == approx(14.2857, 0.0001)
+  
\ No newline at end of file
-- 
GitLab