summaryrefslogtreecommitdiff
path: root/CMSIS/Documentation/SVD/html
diff options
context:
space:
mode:
Diffstat (limited to 'CMSIS/Documentation/SVD/html')
-rw-r--r--CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.pngbin0 -> 7472 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/Access_SVD_Vendor.pngbin0 -> 16871 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd621
-rw-r--r--CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.pngbin0 -> 12402 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.pngbin0 -> 9613 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.pngbin0 -> 11010 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.pngbin0 -> 31649 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/Manage_SVD_DD.pngbin0 -> 12994 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/SystemViewer_Generated.pngbin0 -> 39693 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/bc_s.pngbin0 -> 676 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/bdwn.pngbin0 -> 147 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/closed.pngbin0 -> 132 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/cmsis.css1269
-rw-r--r--CMSIS/Documentation/SVD/html/doxygen.css1172
-rw-r--r--CMSIS/Documentation/SVD/html/doxygen.pngbin0 -> 3779 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/dynsections.js78
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2blank.pngbin0 -> 86 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2cl.pngbin0 -> 453 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2doc.pngbin0 -> 746 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2folderclosed.pngbin0 -> 616 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2folderopen.pngbin0 -> 597 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2lastnode.pngbin0 -> 86 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2link.pngbin0 -> 746 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2mlastnode.pngbin0 -> 246 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2mnode.pngbin0 -> 246 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2mo.pngbin0 -> 403 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2node.pngbin0 -> 86 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2ns.pngbin0 -> 388 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2plastnode.pngbin0 -> 229 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2pnode.pngbin0 -> 229 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2splitbar.pngbin0 -> 314 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/ftv2vertline.pngbin0 -> 86 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/group__cluster_level__gr.html182
-rw-r--r--CMSIS/Documentation/SVD/html/group__cpu_section__gr.html201
-rw-r--r--CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html150
-rw-r--r--CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html121
-rw-r--r--CMSIS/Documentation/SVD/html/group__elem__type__gr.html103
-rw-r--r--CMSIS/Documentation/SVD/html/group__elem__type__gr.js6
-rw-r--r--CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html117
-rw-r--r--CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html118
-rw-r--r--CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html114
-rw-r--r--CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html147
-rw-r--r--CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html711
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html111
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js8
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd___format__gr.html140
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd___format__gr.js8
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html175
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html194
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html211
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html225
-rw-r--r--CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html234
-rw-r--r--CMSIS/Documentation/SVD/html/index.html161
-rw-r--r--CMSIS/Documentation/SVD/html/jquery.js77
-rw-r--r--CMSIS/Documentation/SVD/html/modules.html111
-rw-r--r--CMSIS/Documentation/SVD/html/modules.js7
-rw-r--r--CMSIS/Documentation/SVD/html/nav_f.pngbin0 -> 153 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/nav_g.pngbin0 -> 95 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/nav_h.pngbin0 -> 98 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/navtree.css143
-rw-r--r--CMSIS/Documentation/SVD/html/navtree.js517
-rw-r--r--CMSIS/Documentation/SVD/html/navtreeindex0.js40
-rw-r--r--CMSIS/Documentation/SVD/html/open.pngbin0 -> 123 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/pages.html98
-rw-r--r--CMSIS/Documentation/SVD/html/printComponentTabs.js36
-rw-r--r--CMSIS/Documentation/SVD/html/resize.js93
-rw-r--r--CMSIS/Documentation/SVD/html/svd__example_pg.html876
-rw-r--r--CMSIS/Documentation/SVD/html/svd__outline_pg.html126
-rw-r--r--CMSIS/Documentation/SVD/html/svd__s_v_d_conv_pg.html236
-rw-r--r--CMSIS/Documentation/SVD/html/svd_revision_history.html106
-rw-r--r--CMSIS/Documentation/SVD/html/svd_validate_file_pg.html120
-rw-r--r--CMSIS/Documentation/SVD/html/svd_web_pg.html100
-rw-r--r--CMSIS/Documentation/SVD/html/svd_web_pg.js15
-rw-r--r--CMSIS/Documentation/SVD/html/svd_web_public_pg.html126
-rw-r--r--CMSIS/Documentation/SVD/html/svd_web_restricted_pg.html152
-rw-r--r--CMSIS/Documentation/SVD/html/sync_off.pngbin0 -> 853 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/sync_on.pngbin0 -> 845 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tab_a.pngbin0 -> 142 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tab_b.pngbin0 -> 170 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tab_h.pngbin0 -> 177 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tab_s.pngbin0 -> 184 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tab_topnav.pngbin0 -> 232 bytes
-rw-r--r--CMSIS/Documentation/SVD/html/tabs.css71
83 files changed, 9627 insertions, 0 deletions
diff --git a/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png b/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png
new file mode 100644
index 0000000..841587e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png b/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png
new file mode 100644
index 0000000..4a7fc7c
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd b/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd
new file mode 100644
index 0000000..f779e68
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd
@@ -0,0 +1,621 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ date: 22.10.2015
+
+ Copyright (C) 2011 - 2015 ARM Limited. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ - Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ - Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ - Neither the name of ARM nor the names of its contributors may be used
+ to endorse or promote products derived from this software without
+ specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+ This is CMSIS-SVD
+
+ Version 1.3.1:
+ fixed peripheral name element type to identifierType to support %s for peripheral arrays
+ added optional protection element to addressBlockType and added p=privileged
+
+ Version 1.3:
+ added dim to peripherals to describe an array of peripherals.
+ added nesting of clusters to support hierarchical register structures.
+ added protection element as part of the registerPropertiesGroup indicating
+ special permissions are required for accessing a register.
+ CPU Section extended with description of the Secure Attribution Unit.
+
+ Version 1.2:
+ Cortex-M7 support items have been added as optional tags for the device header file generation:
+ fpuDP, icachePresent, dcachePresent, itcmPresent, dtcmPresent
+
+ Version 1.1:
+ For backward compatibility all additional tags have been made optional.
+ Extensions may be mandatory for successful device header file generation
+ Other changes are related to some restructuring of the schema.
+
+ Note that the memory section has been removed since this would limit the
+ reuse of descriptions for a series of devices.
+ -->
+
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.3">
+ <!-- stringType requires a none empty string of a least one character length -->
+ <xs:simpleType name="stringType">
+ <xs:restriction base="xs:string">
+ <xs:minLength value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- cpuType specifies a selection of Cortex-M and Secure-Cores. This list will get extended as new processors are released -->
+ <xs:simpleType name="cpuNameType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="CM0"/>
+ <xs:enumeration value="CM0PLUS"/>
+ <xs:enumeration value="CM0+"/>
+ <xs:enumeration value="CM1"/>
+ <xs:enumeration value="SC000"/>
+ <xs:enumeration value="CM3"/>
+ <xs:enumeration value="SC300"/>
+ <xs:enumeration value="CM4"/>
+ <xs:enumeration value="CM7"/>
+ <xs:enumeration value="CA5"/>
+ <xs:enumeration value="CA7"/>
+ <xs:enumeration value="CA8"/>
+ <xs:enumeration value="CA9"/>
+ <xs:enumeration value="CA15"/>
+ <xs:enumeration value="CA17"/>
+ <xs:enumeration value="CA53"/>
+ <xs:enumeration value="CA57"/>
+ <xs:enumeration value="CA72"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- revisionType specifies the CPU revision format as defined by ARM (rNpM) -->
+ <xs:simpleType name="revisionType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="r[0-9]p[0-9]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- EndianType pre-defines the tokens for specifying the endianess of the device -->
+ <xs:simpleType name="endianType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="little"/>
+ <xs:enumeration value="big"/>
+ <xs:enumeration value="selectable"/>
+ <xs:enumeration value="other"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- dataType pre-defines the tokens in line with CMSIS data type definitions -->
+ <xs:simpleType name="dataTypeType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="uint8_t"/>
+ <xs:enumeration value="uint16_t"/>
+ <xs:enumeration value="uint32_t"/>
+ <xs:enumeration value="uint64_t"/>
+ <xs:enumeration value="int8_t"/>
+ <xs:enumeration value="int16_t"/>
+ <xs:enumeration value="int32_t"/>
+ <xs:enumeration value="int64_t"/>
+ <xs:enumeration value="uint8_t *"/>
+ <xs:enumeration value="uint16_t *"/>
+ <xs:enumeration value="uint32_t *"/>
+ <xs:enumeration value="uint64_t *"/>
+ <xs:enumeration value="int8_t *"/>
+ <xs:enumeration value="int16_t *"/>
+ <xs:enumeration value="int32_t *"/>
+ <xs:enumeration value="int64_t *"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- nvicPrioBitsType specifies the integer value range for the number of bits used in NVIC to encode priority levels -->
+ <xs:simpleType name="nvicPrioBitsType">
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="2"/>
+ <xs:maxInclusive value="8"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- identifierType specifies the subset and sequence of characters used for specifying identifiers within the description. -->
+ <!-- this is particularly important as these are used in ANSI C Structures during the device header file generation -->
+ <xs:simpleType name="identifierType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="((%s)[_A-Za-z]{1}[_A-Za-z0-9]*)|([_A-Za-z]{1}[_A-Za-z0-9]*(\[%s\])?)|([_A-Za-z]{1}[_A-Za-z0-9]*(%s)?[_A-Za-z0-9]*)"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- enumerationNameType specifies the subset and sequence of characters used for specifying names of enumeratedValues. -->
+ <!-- this is particularly important as these are used in ANSI C Structures during the device header file generation -->
+ <xs:simpleType name="enumerationNameType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[_A-Za-z0-9]*"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- V1.3: Protection Access Attribute Strings -->
+ <xs:simpleType name="protectionStringType">
+ <xs:restriction base="xs:string">
+ <!-- s = Secure -->
+ <!-- n = Non-secure -->
+ <!-- p = Privileged -->
+ <xs:pattern value="[snp]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- V1.3: SAU Access Type -->
+ <xs:simpleType name="sauAccessType">
+ <xs:restriction base="xs:string">
+ <!-- c = non-secure Callable / Secure -->
+ <!-- n = Non-secure -->
+ <xs:pattern value="[cn]"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <!-- dimIndexType specifies the subset and sequence of characters used for specifying the sequence of indices in register arrays -->
+ <xs:simpleType name="dimIndexType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]+\-[0-9]+|[A-Z]-[A-Z]|[_0-9a-zA-Z]+(,\s*[_0-9a-zA-Z]+)+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- scaledNonNegativeInteger specifies the format in which numbers are represented in hexadecimal or decimar format -->
+ <xs:simpleType name="scaledNonNegativeInteger">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[+]?(0x|0X|#)?[0-9a-fA-F]+[kmgtKMGT]?"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- enumeratedValueDataType specifies the number formats for the values in enumeratedValues -->
+ <xs:simpleType name="enumeratedValueDataType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[+]?(0x|0X|#)?[0-9a-fxA-FX]+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- accessType specfies the pre-defined tokens for the available accesses -->
+ <xs:simpleType name="accessType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="read-only"/>
+ <xs:enumeration value="write-only"/>
+ <xs:enumeration value="read-write"/>
+ <xs:enumeration value="writeOnce"/>
+ <xs:enumeration value="read-writeOnce"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- modifiedWriteValuesType specifies the pre-defined tokens for the write side effects -->
+ <xs:simpleType name="modifiedWriteValuesType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="oneToClear"/>
+ <xs:enumeration value="oneToSet"/>
+ <xs:enumeration value="oneToToggle"/>
+ <xs:enumeration value="zeroToClear"/>
+ <xs:enumeration value="zeroToSet"/>
+ <xs:enumeration value="zeroToToggle"/>
+ <xs:enumeration value="clear"/>
+ <xs:enumeration value="set"/>
+ <xs:enumeration value="modify"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- readAction type specifies the pre-defined tokens for read side effects -->
+ <xs:simpleType name="readActionType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="clear"/>
+ <xs:enumeration value="set"/>
+ <xs:enumeration value="modify"/>
+ <xs:enumeration value="modifyExternal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- enumUsageType specifies the pre-defined tokens for selecting what access types an enumeratedValues set is associated with -->
+ <xs:simpleType name="enumUsageType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="read"/>
+ <xs:enumeration value="write"/>
+ <xs:enumeration value="read-write"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- bitRangeType specifies the bit numbers to be restricted values from 0 - 69 -->
+ <xs:simpleType name="bitRangeType">
+ <xs:restriction base="xs:token">
+ <xs:pattern value="\[([0-4])?[0-9]:([0-4])?[0-9]\]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- writeContraintType specifies how to describe the restriction of the allowed values that can be written to a resource -->
+ <xs:complexType name="writeConstraintType">
+ <xs:choice>
+ <xs:element name="writeAsRead" type="xs:boolean"/>
+ <xs:element name="useEnumeratedValues" type="xs:boolean"/>
+ <xs:element name="range">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="minimum" type="scaledNonNegativeInteger"/>
+ <xs:element name="maximum" type="scaledNonNegativeInteger"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ <!-- addressBlockType specifies the elements to describe an address block -->
+ <xs:complexType name="addressBlockType">
+ <xs:sequence>
+ <xs:element name="offset" type="scaledNonNegativeInteger"/>
+ <xs:element name="size" type="scaledNonNegativeInteger"/>
+ <xs:element name="usage">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="registers"/>
+ <xs:enumeration value="buffer"/>
+ <xs:enumeration value="reserved"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <!-- Version 1.3.2: optional access protection for an address block s=secure n=non-secure p=privileged -->
+ <xs:element name="protection" type="protectionStringType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- interruptType specifies how to describe an interrupt associated with a peripheral -->
+ <xs:complexType name="interruptType">
+ <xs:sequence>
+ <xs:element name="name" type="stringType"/>
+ <xs:element name="description" type="xs:string" minOccurs="0"/>
+ <xs:element name="value" type="xs:integer"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- register properties group specifies register size, access permission and reset value
+ this is used in multiple locations. Settings are inherited downstream. -->
+ <xs:group name="registerPropertiesGroup">
+ <xs:sequence>
+ <xs:element name="size" type="scaledNonNegativeInteger" minOccurs="0"/>
+ <xs:element name="access" type="accessType" minOccurs="0"/>
+ <!-- V 1.3: extended register access protection -->
+ <xs:element name="protection" type="protectionStringType" minOccurs="0"/>
+ <xs:element name="resetValue" type="scaledNonNegativeInteger" minOccurs="0"/>
+ <xs:element name="resetMask" type="scaledNonNegativeInteger" minOccurs="0"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- bitRangeLsbMsbStyle specifies the bit position of a field within a register
+ by specifying the least significant and the most significant bit position -->
+ <xs:group name="bitRangeLsbMsbStyle">
+ <xs:sequence>
+ <xs:element name="lsb" type="scaledNonNegativeInteger"/>
+ <xs:element name="msb" type="scaledNonNegativeInteger"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- bitRangeOffsetWidthStyle specifies the bit position of a field within a register
+ by specifying the least significant bit position and the bitWidth of the field -->
+ <xs:group name="bitRangeOffsetWidthStyle">
+ <xs:sequence>
+ <xs:element name="bitOffset" type="scaledNonNegativeInteger"/>
+ <xs:element name="bitWidth" type="scaledNonNegativeInteger" minOccurs="0"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- dimElementGroup specifies the number of array elements (dim), the address offset
+ between to consecutive array elements and an a comma seperated list of strings
+ being used for identifying each element in the array -->
+ <xs:group name="dimElementGroup">
+ <xs:sequence>
+ <xs:element name="dim" type="scaledNonNegativeInteger"/>
+ <xs:element name="dimIncrement" type="scaledNonNegativeInteger"/>
+ <xs:element name="dimIndex" type="dimIndexType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:group>
+
+ <xs:complexType name="cpuType">
+ <xs:sequence>
+ <!-- V1.1: ARM processor name: Cortex-Mx / SCxxx -->
+ <xs:element name="name" type="cpuNameType"/>
+ <!-- V1.1: ARM defined revision of the cpu -->
+ <xs:element name="revision" type="revisionType"/>
+ <!-- V1.1: Endian specifies the endianess of the processor/device -->
+ <xs:element name="endian" type="endianType"/>
+ <!-- V1.1: mpuPresent specifies whether or not a memory protection unit is physically present -->
+ <xs:element name="mpuPresent" type="xs:boolean"/>
+ <!-- V1.1: fpuPresent specifies whether or not a floating point hardware unit is physically present -->
+ <xs:element name="fpuPresent" type="xs:boolean"/>
+ <!-- V1.2: fpuDP specifies a double precision floating point hardware unit is physically present-->
+ <xs:element name="fpuDP" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.2: icachePresent specifies that an instruction cache is physically present-->
+ <xs:element name="icachePresent" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.2: dcachePresent specifies that a data cache is physically present-->
+ <xs:element name="dcachePresent" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.2: itcmPresent specifies that an instruction tightly coupled memory is physically present-->
+ <xs:element name="itcmPresent" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.2: dtcmPresent specifies that an data tightly coupled memory is physically present-->
+ <xs:element name="dtcmPresent" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.1: vtorPresent is used for Cortex-M0+ based devices only. It indicates whether the Vector -->
+ <!-- Table Offset Register is implemented in the device or not -->
+ <xs:element name="vtorPresent" type="xs:boolean" minOccurs="0"/>
+ <!-- V1.1: nvicPrioBits specifies the number of bits used by the Nested Vectored Interrupt Controller -->
+ <!-- for defining the priority level = # priority levels -->
+ <xs:element name="nvicPrioBits" type="scaledNonNegativeInteger"/>
+ <!-- V1.1: vendorSystickConfig is set true if a custom system timer is implemented in the device -->
+ <!-- instead of the ARM specified SysTickTimer -->
+ <xs:element name="vendorSystickConfig" type="xs:boolean"/>
+ <!-- V1.3: reports the total number of interrupts implemented by the device (optional) -->
+ <xs:element name="deviceNumInterrupts" type="scaledNonNegativeInteger" minOccurs="0"/>
+ <!-- V1.3: sauRegions specifies the available number of address regions -->
+ <!-- if not specified a value of zero is assumed -->
+ <xs:element name="sauNumRegions" type="scaledNonNegativeInteger" minOccurs="0"/>
+ <!-- V1.3: SAU Regions Configuration (if fully or partially predefined) -->
+ <xs:element name="sauRegionsConfig" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="region" minOccurs="0" maxOccurs="unbounded">
+ <!-- addressBlockType specifies the elements to describe an address block -->
+ <xs:complexType>
+ <xs:sequence minOccurs="1" maxOccurs="unbounded">
+ <xs:element name="base" type="scaledNonNegativeInteger"/>
+ <xs:element name="limit" type="scaledNonNegativeInteger"/>
+ <xs:element name="access" type="sauAccessType"/>
+ </xs:sequence>
+ <xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/>
+ <xs:attribute name="name" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/>
+ <xs:attribute name="protectionWhenDisabled" type="protectionStringType" use="optional" default="s"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="enumeratedValuesType">
+ <xs:sequence>
+ <!-- name specfies a reference to this enumeratedValues section for reuse purposes
+ this name does not appear in the System Viewer nor the Header File. -->
+ <xs:element name="name" type="enumerationNameType" minOccurs="0"/>
+ <!-- usage specifies whether this enumeration is to be used for read or write or
+ (read and write) accesses -->
+ <xs:element name="usage" type="enumUsageType" minOccurs="0"/>
+ <!-- enumeratedValue derivedFrom=<identifierType> -->
+ <xs:element name="enumeratedValue" minOccurs="1" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <!-- name is a ANSI C indentifier representing the value (C Enumeration) -->
+ <xs:element name="name" type="enumerationNameType"/>
+ <!-- description contains the details about the semantics/behavior specified by this value -->
+ <xs:element name="description" type="stringType" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="value" type="enumeratedValueDataType"/>
+ <!-- isDefault specifies the name and description for all values that are not
+ specifically described individually -->
+ <xs:element name="isDefault" type="xs:boolean"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="derivedFrom" type="enumerationNameType" use="optional"/>
+ </xs:complexType>
+
+ <xs:complexType name="fieldType">
+ <xs:sequence>
+ <!-- name specifies a field's name. The System Viewer and the device header file will
+ use the name of the field as identifier -->
+ <xs:element name="name" type="identifierType"/>
+ <!-- description contains reference manual level information about the function and
+ options of a field -->
+ <xs:element name="description" type="stringType" minOccurs="0"/>
+ <!-- alternative specifications of the bit position of the field within the register -->
+ <xs:choice minOccurs="1" maxOccurs="1">
+ <!-- bit field described by lsb followed by msb tag -->
+ <xs:group ref="bitRangeLsbMsbStyle"/>
+ <!-- bit field described by bit offset relative to Bit0 + bit width of field -->
+ <xs:group ref="bitRangeOffsetWidthStyle"/>
+ <!-- bit field described by [<msb>:<lsb>] -->
+ <xs:element name="bitRange" type="bitRangeType"/>
+ </xs:choice>
+ <!-- access describes the predefined permissions for the field. -->
+ <xs:element name="access" type="accessType" minOccurs="0"/>
+ <!-- predefined description of write side effects -->
+ <xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/>
+ <!-- writeContstraint specifies the subrange of allowed values -->
+ <xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/>
+ <!-- readAction specifies the read side effects. -->
+ <xs:element name="readAction" type="readActionType" minOccurs="0"/>
+ <!-- enumeratedValues derivedFrom=<identifierType> -->
+ <xs:element name="enumeratedValues" type="enumeratedValuesType" minOccurs="0" maxOccurs="2">
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
+ </xs:complexType>
+
+ <xs:complexType name="fieldsType">
+ <xs:sequence>
+ <!-- field derivedFrom=<identifierType> -->
+ <xs:element name="field" type="fieldType" minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="registerType">
+ <xs:sequence>
+ <xs:group ref="dimElementGroup" minOccurs="0"/>
+ <!-- name specifies the name of the register. The register name is used by System Viewer and
+ device header file generator to represent a register -->
+ <xs:element name="name" type="identifierType"/>
+ <!-- display name specifies a register name without the restritions of an ANSIS C identifier.
+ The use of this tag is discouraged because it does not allow consistency between
+ the System View and the device header file. -->
+ <xs:element name="displayName" type="stringType" minOccurs="0"/>
+ <!-- description contains a reference manual level description about the register and it's purpose -->
+ <xs:element name="description" type="stringType" minOccurs="0"/>
+ <xs:choice>
+ <!-- alternateGroup specifies the identifier of the subgroup a register belongs to.
+ This is useful if a register has a different description per mode but a single name -->
+ <xs:element name="alternateGroup" type="identifierType" minOccurs="0"/>
+ <!-- V1.1: alternateRegister specifies an alternate register description for an address that is
+ already fully described. In this case the register name must be unique within the peripheral -->
+ <xs:element name="alternateRegister" type="identifierType" minOccurs="0"/>
+ </xs:choice>
+ <!-- addressOffset describes the address of the register relative to the baseOffset of the peripheral -->
+ <xs:element name="addressOffset" type="scaledNonNegativeInteger"/>
+ <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all fields contained in this register -->
+ <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
+ <!-- V1.1: dataType specifies a CMSIS compliant native dataType for a register (i.e. signed, unsigned, pointer) -->
+ <xs:element name="dataType" type="dataTypeType" minOccurs="0"/>
+ <!-- modifiedWriteValues specifies the write side effects -->
+ <xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/>
+ <!-- writeConstraint specifies the subset of allowed write values -->
+ <xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/>
+ <!-- readAcction specifies the read side effects -->
+ <xs:element name="readAction" type="readActionType" minOccurs="0"/>
+ <!-- fields section contains all fields that belong to this register -->
+ <xs:element name="fields" type="fieldsType" minOccurs="0" maxOccurs="1"/>
+ </xs:sequence>
+ <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
+ </xs:complexType>
+
+ <!-- V1.1: A cluster is a set of registers that are composed into a C data structure in the device header file -->
+ <xs:complexType name="clusterType">
+ <xs:sequence>
+ <xs:group ref="dimElementGroup" minOccurs="0"/>
+ <xs:element name="name" type="identifierType"/>
+ <xs:element name="description" type="xs:string"/>
+ <!-- V1.1: alternateCluster specifies an alternative description for a cluster address range that is
+ already fully described. In this case the cluster name must be unique within the peripheral -->
+ <xs:element name="alternateCluster" type="identifierType" minOccurs="0"/>
+ <!-- V1.1: headerStructName specifies the name for the cluster structure typedef
+ used in the device header generation instead of the cluster name -->
+ <xs:element name="headerStructName" type="identifierType" minOccurs="0"/>
+ <xs:element name="addressOffset" type="scaledNonNegativeInteger"/>
+ <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all registers contained in this peripheral -->
+ <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
+ <xs:sequence>
+ <xs:choice minOccurs="1" maxOccurs="unbounded">
+ <xs:element name="register" type="registerType" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- 1.3: nesting of cluster is supported -->
+ <xs:element name="cluster" type="clusterType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
+ </xs:complexType>
+
+ <!-- the registers section can have an arbitrary list of cluster and register sections -->
+ <xs:complexType name="registersType">
+ <xs:choice minOccurs="1" maxOccurs="unbounded">
+ <xs:element name="cluster" type="clusterType"/>
+ <xs:element name="register" type="registerType"/>
+ </xs:choice>
+ </xs:complexType>
+
+ <xs:complexType name="peripheralType">
+ <xs:sequence>
+ <!-- 1.3: specify uni-dimensional array of peripheral - requires name="<name>[%s]" -->
+ <xs:group ref="dimElementGroup" minOccurs="0"/>
+ <!-- name specifies the name of a peripheral. This name is used for the System View and device header file -->
+ <xs:element name="name" type="identifierType"/>
+ <!-- version specifies the version of the peripheral descriptions -->
+ <xs:element name="version" type="stringType" minOccurs="0"/>
+ <!-- description provides a high level functional description of the peripheral -->
+ <xs:element name="description" type="stringType" minOccurs="0"/>
+ <!-- V1.1: alternatePeripheral specifies an alternative description for an address range that is
+ already fully by a peripheral described. In this case the peripheral name must be unique within the device description -->
+ <xs:element name="alternatePeripheral" type="identifierType" minOccurs="0"/>
+ <!-- groupName assigns this peripheral to a group of peripherals. This is only used bye the System View -->
+ <xs:element name="groupName" type="xs:Name" minOccurs="0"/>
+ <!-- prependToName specifies a prefix that is placed in front of each register name of this peripheral.
+ The device header file will show the registers in a C-Struct of the peripheral without the prefix. -->
+ <xs:element name="prependToName" type="identifierType" minOccurs="0"/>
+ <!-- appendToName is a postfix that is appended to each register name of this peripheral. The device header
+ file will sho the registers in a C-Struct of the peripheral without the postfix -->
+ <xs:element name="appendToName" type="identifierType" minOccurs="0"/>
+ <!-- V1.1: headerStructName specifies the name for the peripheral structure typedef
+ used in the device header generation instead of the peripheral name -->
+ <xs:element name="headerStructName" type="identifierType" minOccurs="0"/>
+ <!-- disableCondition contains a logical expression based on constants and register or bit-field values
+ if the condition is evaluated to true, the peripheral display will be disabled -->
+ <xs:element name="disableCondition" type="stringType" minOccurs="0"/>
+ <!-- baseAddress specifies the absolute base address of a peripheral. For derived peripherals it is mandatory
+ to specify a baseAddress. -->
+ <xs:element name="baseAddress" type="scaledNonNegativeInteger"/>
+ <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all registers contained in this peripheral -->
+ <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
+ <!-- addressBlock specifies one or more address ranges that are assigned exclusively to this peripheral.
+ derived peripherals may have no addressBlock, however none-derived peripherals are required to specify
+ at least one address block -->
+ <xs:element name="addressBlock" type="addressBlockType" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- interrupt specifies can specify one or more interrtupts by name, description and value -->
+ <xs:element name="interrupt" type="interruptType" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- registers section contains all registers owned by the peripheral. In case a peripheral gets derived it does
+ not have its own registers section, hence this section is optional. A unique peripheral without a
+ registers section is not allowed -->
+ <xs:element name="registers" type="registersType" minOccurs="0" maxOccurs="1">
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
+ </xs:complexType>
+
+ <!-- ==================================================== -->
+ <!-- The top level element of a description is the device -->
+ <!-- ==================================================== -->
+ <xs:element name="device" nillable="true">
+ <xs:complexType>
+ <xs:sequence>
+ <!-- V1.1: Vendor Name -->
+ <xs:element name="vendor" type="stringType" minOccurs="0"/>
+ <!-- V1.1: Vendor ID - a short name for referring to the vendor (e.g. Texas Instruments = TI) -->
+ <xs:element name="vendorID" type="identifierType" minOccurs="0"/>
+ <!-- name specifies the device name being described -->
+ <xs:element name="name" type="identifierType"/>
+ <!-- V1.1: series specifies the device series or family name -->
+ <xs:element name="series" type="stringType" minOccurs="0"/>
+ <!-- version specifies the version of the device description -->
+ <xs:element name="version" type="stringType"/>
+ <!-- description is a string describing the device features (e.g. memory size, peripherals, etc.) -->
+ <xs:element name="description" type="stringType"/>
+ <!-- V1.1: licenseText specifies the file header section to be included in any derived file -->
+ <xs:element name="licenseText" type="stringType" minOccurs="0"/>
+ <!-- V1.1: cpu specifies the details of the processor included in the device -->
+ <xs:element name="cpu" type="cpuType" minOccurs="0"/>
+ <!-- V1.1: the tag specifies the filename without extension of the CMSIS System Device include file.
+ This tag is used by the header file generator for customizing the include statement referencing the
+ CMSIS system file within the CMSIS device header file. By default the filename is "system_<device.name>"
+ In cases a device series shares a single system header file, the name of the series shall be used
+ instead of the individual device name. -->
+ <xs:element name="headerSystemFilename" type="identifierType" minOccurs="0"/>
+ <!-- V1.1: headerDefinitionPrefix specifies the string being prepended to all names of types defined in
+ generated device header file -->
+ <xs:element name="headerDefinitionsPrefix" type="identifierType" minOccurs="0"/>
+ <!-- addressUnitBits specifies the size of the minimal addressable unit in bits -->
+ <xs:element name="addressUnitBits" type="scaledNonNegativeInteger"/>
+ <!-- width specifies the number of bits for the maximum single transfer size allowed by the bus interface.
+ This sets the maximum size of a single register that can be defined for an address space -->
+ <xs:element name="width" type="scaledNonNegativeInteger"/>
+ <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value -->
+ <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
+
+ <!-- peripherals is containing all peripherals -->
+ <xs:element name="peripherals">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="peripheral" type="peripheralType" minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- Vendor Extensions: this section captures custom extensions. This section will be ignored by default -->
+ <xs:element name="vendorExtensions" minOccurs="0" maxOccurs="1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded">
+ </xs:any>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="schemaVersion" type="xs:decimal" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
+
+<!-- END OF FILE --> \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png
new file mode 100644
index 0000000..2056b7e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png
new file mode 100644
index 0000000..cf7aa83
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png
new file mode 100644
index 0000000..d62f75b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png
new file mode 100644
index 0000000..1354448
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png b/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png
new file mode 100644
index 0000000..f14f62c
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png b/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png
new file mode 100644
index 0000000..e189de7
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/bc_s.png b/CMSIS/Documentation/SVD/html/bc_s.png
new file mode 100644
index 0000000..224b29a
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/bc_s.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/bdwn.png b/CMSIS/Documentation/SVD/html/bdwn.png
new file mode 100644
index 0000000..940a0b9
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/bdwn.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/closed.png b/CMSIS/Documentation/SVD/html/closed.png
new file mode 100644
index 0000000..98cc2c9
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/closed.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/cmsis.css b/CMSIS/Documentation/SVD/html/cmsis.css
new file mode 100644
index 0000000..293d0d0
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/cmsis.css
@@ -0,0 +1,1269 @@
+/* The standard CSS for doxygen */
+
+body, table, div, p, dl {
+ font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
+ font-size: 13px;
+ line-height: 1.3;
+}
+
+/* CMSIS styles */
+
+.style1 {
+ text-align: center;
+}
+.style2 {
+ color: #0000FF;
+ font-weight: normal;
+}
+.style3 {
+ text-align: left;
+}
+.style4 {
+ color: #008000;
+}
+.style5 {
+ color: #0000FF;
+}
+.style6 {
+ color: #000000;
+ font-style:italic;
+}
+.mand {
+ color: #0000FF;
+}
+.opt {
+ color: #008000;
+}
+.cond {
+ color: #990000;
+}
+
+.choice
+{
+ background-color:#F7F9D0;
+}
+.seq
+{
+ background-color:#C9DECB;
+}
+.group1
+{
+ background-color:#F8F1F1;
+}
+.group2
+{
+ background-color:#DCEDEA;
+}
+
+
+ul ul {
+ list-style-type: disc;
+}
+
+ul ul ul {
+ list-style-type: disc;
+}
+
+ul.hierarchy {
+ color: green;
+}
+
+em {
+ color: #000000;
+ font-style:italic;
+}
+
+
+
+/* CMSIS Tables */
+table.cmtab1 {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A3B4D7;
+ text-align: justify;
+ width:70%;
+}
+
+th.cmtab1 {
+ background: #EBEFF6;
+ font-weight: bold;
+ height: 28px;
+}
+
+td.cmtab1 {
+ padding:1px;
+ text-align: left;
+}
+
+table.cmtable {
+ border-collapse:collapse;
+ text-align: justify;
+}
+
+table.cmtable td, table.cmtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.cmtable th {
+ background-color: #EBEFF6;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+}
+
+td.MonoTxt {
+ font-family:"Arial monospaced for SAP";
+}
+
+td.XML-Token
+{
+ azimuth: 180;
+ font-style:italic;
+ color:Maroon;
+ z-index:20;
+
+}
+
+span.XML-Token
+{
+ azimuth: 180;
+ font-style:italic;
+ color:Maroon;
+ z-index:20;
+
+}
+
+span.h2
+{
+ font-size: 120%;
+ font-weight: bold;
+}
+
+
+
+/* @group Heading Levels */
+
+h1 {
+ font-size: 150%;
+}
+
+.title {
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2 {
+ font-size: 120%;
+}
+
+h3 {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd, p.starttd {
+ margin-top: 2px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A2B4D8;
+ text-align: center;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #3A568E;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #4464A5;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #9AAED5;
+ color: #ffffff;
+ border: 1px double #849CCC;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited {
+ color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+div.fragment {
+ padding: 4px;
+ margin: 4px;
+ background-color: #FBFCFD;
+ border: 1px solid #C3CFE6;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+}
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
+}
+span.lineno a {
+ background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+ background-color: #C8C8C8;
+}
+
+div.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
+}
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C3CFE6;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
+}
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C3CFE6;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #EDF1F7;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9AAED5;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A2B4D8;
+}
+
+th.dirtab {
+ background: #EBEFF6;
+ font-weight: bold;
+}
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4769AD;
+}
+
+hr.footer {
+ height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memItemLeft, .memItemRight, .memTemplParams {
+ border-top: 1px solid #C3CFE6;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4464A5;
+ white-space: nowrap;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+ font-size: 80%;
+ color: #4464A5;
+ font-weight: normal;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A2B4D8;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.mempage {
+ width: 100%;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+ font-weight: bold;
+ margin-left: 6px;
+}
+
+.memname td {
+ vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A7B8DA;
+ border-left: 1px solid #A7B8DA;
+ border-right: 1px solid #A7B8DA;
+ padding: 6px 0px 6px 0px;
+ color: #233456;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E7F3;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A7B8DA;
+ border-left: 1px solid #A7B8DA;
+ border-right: 1px solid #A7B8DA;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #708CC4;
+ border-top:1px solid #5072B7;
+ border-left:1px solid #5072B7;
+ border-right:1px solid #C3CFE6;
+ border-bottom:1px solid #C3CFE6;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+}
+
+
+
+/* @end */
+
+/* these are for tree view when not used as main index */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3A568E;
+}
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #293C63;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2B4069;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #EBEFF6;
+ color: #000000;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ width: 100%;
+ margin-bottom: 10px;
+ border: 1px solid #A7B8DA;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A7B8DA;
+ border-bottom: 1px solid #A7B8DA;
+ vertical-align: top;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A7B8DA;
+ width: 100%;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E7F3;
+ font-size: 90%;
+ color: #233456;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A7B8DA;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ height:30px;
+ line-height:30px;
+ color:#889FCE;
+ border:solid 1px #C1CDE5;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#344D7E;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6583BF;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#344D7E;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+div.ingroups
+{
+ margin-left: 5px;
+ font-size: 8pt;
+ padding-left: 5px;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C3CFE6;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 7px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5072B7;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #8EA4D0;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#314877;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D7DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4464A5;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
diff --git a/CMSIS/Documentation/SVD/html/doxygen.css b/CMSIS/Documentation/SVD/html/doxygen.css
new file mode 100644
index 0000000..2642e8f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/doxygen.css
@@ -0,0 +1,1172 @@
+/* The standard CSS for doxygen */
+
+body, table, div, p, dl {
+ font: 400 14px/19px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
+}
+
+.title {
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd, p.starttd {
+ margin-top: 2px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #3D578C;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #4665A2;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #9CAFD4;
+ color: #ffffff;
+ border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited {
+ color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+div.fragment {
+ padding: 4px;
+ margin: 4px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+div.line.glow {
+ background-color: cyan;
+ box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
+}
+span.lineno a {
+ background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+ background-color: #C8C8C8;
+}
+
+div.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
+}
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C4CFE5;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
+}
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C4CFE5;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+ background: #EBEFF6;
+ font-weight: bold;
+}
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+ height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memSeparator {
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4665A2;
+ white-space: nowrap;
+ font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+ font-size: 80%;
+ color: #4665A2;
+ font-weight: normal;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.mempage {
+ width: 100%;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+ font-weight: bold;
+ margin-left: 6px;
+}
+
+.memname td {
+ vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #253555;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+.paramname code {
+ line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+ vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view when not used as main index */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ width: 100%;
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ background-position: 0 -5px;
+ height:30px;
+ line-height:30px;
+ color:#8AA0CC;
+ border:solid 1px #C2CDE4;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+ color: #283A5D;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6884BD;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+div.ingroups
+{
+ font-size: 8pt;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4665A2;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
diff --git a/CMSIS/Documentation/SVD/html/doxygen.png b/CMSIS/Documentation/SVD/html/doxygen.png
new file mode 100644
index 0000000..3ff17d8
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/doxygen.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/dynsections.js b/CMSIS/Documentation/SVD/html/dynsections.js
new file mode 100644
index 0000000..116542f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/dynsections.js
@@ -0,0 +1,78 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+}
+function toggleLevel(level)
+{
+ $('table.directory tr').each(function(){
+ var l = this.id.split('_').length-1;
+ var i = $('#img'+this.id.substring(3));
+ var a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.attr('src','ftv2folderopen.png');
+ a.attr('src','ftv2mnode.png');
+ $(this).show();
+ } else if (l==level+1) {
+ i.attr('src','ftv2folderclosed.png');
+ a.attr('src','ftv2pnode.png');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
+ });
+ updateStripes();
+}
+function toggleFolder(id)
+{
+ var n = $('[id^=row_'+id+']');
+ var i = $('[id^=img_'+id+']');
+ var a = $('[id^=arr_'+id+']');
+ var c = n.slice(1);
+ if (c.filter(':first').is(':visible')===true) {
+ i.attr('src','ftv2folderclosed.png');
+ a.attr('src','ftv2pnode.png');
+ c.hide();
+ } else {
+ i.attr('src','ftv2folderopen.png');
+ a.attr('src','ftv2mnode.png');
+ c.show();
+ }
+ updateStripes();
+}
+
+function toggleInherit(id)
+{
+ var rows = $('tr.inherit.'+id);
+ var img = $('tr.inherit_header.'+id+' img');
+ var src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+}
+
diff --git a/CMSIS/Documentation/SVD/html/ftv2blank.png b/CMSIS/Documentation/SVD/html/ftv2blank.png
new file mode 100644
index 0000000..63c605b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2blank.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2cl.png b/CMSIS/Documentation/SVD/html/ftv2cl.png
new file mode 100644
index 0000000..132f657
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2cl.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2doc.png b/CMSIS/Documentation/SVD/html/ftv2doc.png
new file mode 100644
index 0000000..17edabf
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2doc.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2folderclosed.png b/CMSIS/Documentation/SVD/html/ftv2folderclosed.png
new file mode 100644
index 0000000..bb8ab35
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2folderclosed.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2folderopen.png b/CMSIS/Documentation/SVD/html/ftv2folderopen.png
new file mode 100644
index 0000000..d6c7f67
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2folderopen.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2lastnode.png b/CMSIS/Documentation/SVD/html/ftv2lastnode.png
new file mode 100644
index 0000000..63c605b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2lastnode.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2link.png b/CMSIS/Documentation/SVD/html/ftv2link.png
new file mode 100644
index 0000000..17edabf
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2link.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2mlastnode.png b/CMSIS/Documentation/SVD/html/ftv2mlastnode.png
new file mode 100644
index 0000000..0b63f6d
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2mlastnode.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2mnode.png b/CMSIS/Documentation/SVD/html/ftv2mnode.png
new file mode 100644
index 0000000..0b63f6d
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2mnode.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2mo.png b/CMSIS/Documentation/SVD/html/ftv2mo.png
new file mode 100644
index 0000000..4bfb80f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2mo.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2node.png b/CMSIS/Documentation/SVD/html/ftv2node.png
new file mode 100644
index 0000000..63c605b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2node.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2ns.png b/CMSIS/Documentation/SVD/html/ftv2ns.png
new file mode 100644
index 0000000..72e3d71
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2ns.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2plastnode.png b/CMSIS/Documentation/SVD/html/ftv2plastnode.png
new file mode 100644
index 0000000..c6ee22f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2plastnode.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2pnode.png b/CMSIS/Documentation/SVD/html/ftv2pnode.png
new file mode 100644
index 0000000..c6ee22f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2pnode.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2splitbar.png b/CMSIS/Documentation/SVD/html/ftv2splitbar.png
new file mode 100644
index 0000000..fe895f2
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2splitbar.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/ftv2vertline.png b/CMSIS/Documentation/SVD/html/ftv2vertline.png
new file mode 100644
index 0000000..63c605b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/ftv2vertline.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/group__cluster_level__gr.html b/CMSIS/Documentation/SVD/html/group__cluster_level__gr.html
new file mode 100644
index 0000000..abbcbdf
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__cluster_level__gr.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Cluster Level</title>
+<title>CMSIS-SVD: Cluster Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__cluster_level__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Cluster Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></div></div><!--header-->
+<div class="contents">
+<p><b>Cluster</b> adds an optional sub-level within the CMSIS SVD <em>registers</em> level. A cluster describes a sequence of neighboring registers within a peripheral. A cluster specifies the <em>addressOffset</em> relative to the <em>baseAddress</em> of the peripheral. All <em>register</em> elements within a cluster specify their <em>addressOffset</em> relative to the cluster base address (<em>peripheral:baseAddress + cluster:addressOffset</em>). Multiple <em>&lt;register/&gt;</em> and <em>&lt;cluster&gt;</em> sections may occur in any order. Since version 1.3 of the specification the nesting of <em>&lt;cluster&gt;</em> elements is supported. This means, that within a <em>&lt;cluster&gt;</em> section any number of <em>&lt;register&gt;</em> and <em>&lt;cluster&gt;</em> sections may occur. Nested cluster express hierarchical structures of registers. It is predominantely targeted at the generation of device header files where it allows to create C data structure within the peripheral structure type instead of a flat list of registers. Note that you can also specify an array of a cluster using the <em>&lt;dim&gt;</em> element.</p>
+<hr/>
+<pre>
+<span class="mand"><b>&lt;registers&gt;</b> </span></pre><pre><span class="mand"> <b>&lt;cluster<span class="opt">derivedFrom=<em>identifierType</em></span>&gt;</b>
+ <span class="opt">
+ <em>&lt;!-- dimElementGroup --&gt; </em>
+ &lt;dim&gt;<em>scaledNonNegativeInteger</em>&lt;/dim&gt;
+ &lt;dimIncrement&gt;<em>scaledNonNegativeInteger</em>&lt;/dimIncrement&gt;
+ &lt;dimIndex&gt;<em>dimIndexType</em>&lt;/dimIndex&gt;
+ <em>&lt;!-- end of dimElementGroup --&gt; </em>
+ </span>
+ &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;
+ <span class="opt">
+ &lt;headerStructName&gt;<em>identifierType</em>&lt;/headerStructName&gt;
+ &lt;alternateCluster&gt;<em>identifierType</em>&lt;/alternateCluster&gt;
+ </span>
+ &lt;addressOffset&gt;<em>scaledNonNegativeInteger</em>&lt;/addressOffset&gt;</span></pre><pre><span class="mand"> &lt;cluster&gt; ... &lt;/cluster&gt;
+ &lt;register&gt; ... &lt;/register&gt;
+ ...
+ <b>&lt;/cluster&gt;</b>
+ <span class="opt">...
+ &lt;register&gt;
+ ...
+ &lt;/register&gt;
+ &lt;cluster&gt;
+ ...
+ &lt;/cluster&gt;
+ </span>
+<b>&lt;registers&gt;</b> </span>
+</pre><table class="cmtable" summary="Cluster Level Schema">
+<tr>
+<th>Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>derivedFrom </td><td>Specifies the name of the cluster from which to inherit the data. Elements being specified underneath will override the inherited values. <br/>
+<b>Remarks:</b> When deriving a cluster, it is mandatory to specify at least the name, the description, and the addressOffset. </td><td>registerType </td><td>0..1 </td></tr>
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr class="group1">
+<td colspan="4">See <a class="el" href="group__dim_element_group__gr.html">dimElementGroup</a> for details. </td></tr>
+<tr class="group1">
+<td align="left">dim </td><td>The value defines the number of elements in an array of clusters. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td align="left">dimIncrement </td><td>If <em>dim</em> is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring clusters of the cluster array in the address map. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td align="left">dimIndex </td><td>Specifies the substrings that replaces the <em>[%s]</em> placeholder within the cluster name. By default, the index is a decimal value starting with 0 for the first cluster element. </td><td>dimIndexType </td><td>0..1 </td></tr>
+<tr>
+<td>name </td><td>String that identifies the cluster. Register names are required to be unique within the scope of a peripheral. Specify <em>[%s]</em> for generating an array in the device header file. </td><td>identifierType </td><td>1..1 </td></tr>
+<tr>
+<td>description </td><td>String describing the details of the register. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>alternateCluster </td><td>This tag needs to specify the name of the original description of the register sequence if this cluster provides an alternative description. Otherwise the SVDConv will issue errors. </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>headerStructName </td><td>This tag specifies the struct type name in the device header file. If not specified, then the name of the cluster will be used. </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>addressOffset </td><td>Value defining the cluster address relative to the <em>baseAddress</em> defined by the peripheral of the register. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>register </td><td>register description </td><td>registerType </td><td>0..* </td></tr>
+<tr>
+<td>cluster </td><td>cluster description </td><td>clusterType </td><td>0..* </td></tr>
+</table>
+<h1><a class="anchor" id="clusterSection_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">&lt;cluster&gt;</div>
+<div class="line"> &lt;dim&gt;4&lt;/dim&gt;</div>
+<div class="line"> &lt;dimIncrement&gt;8&lt;/dimIncrement&gt;</div>
+<div class="line"> &lt;dimIndex&gt;0-3&lt;/dimIndex&gt;</div>
+<div class="line"> &lt;name&gt;TX[%s]&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Grouping of Transfer data and address&lt;/description&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0x40&lt;/addressOffset&gt;</div>
+<div class="line"> &lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;TX_DATA&lt;/name&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;addressOffset&gt;0x0&lt;/addressOffset&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;TX_ADDR&lt;/name&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;addressOffset&gt;0x4&lt;/addressOffset&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line">&lt;/cluster&gt;</div>
+</div><!-- fragment --><p>The example above describes an array of type TX with 4 elements. TX is a cluster of two consecutive registers with 4 elements. The device header file looks like this:</p>
+<div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"> ...</div>
+<div class="line"> <span class="keyword">struct </span>{</div>
+<div class="line"> __IO uint32_t TX_DATA;</div>
+<div class="line"> __IO uint32_t TX_ADDR;</div>
+<div class="line"> } TX[4];</div>
+<div class="line"> ...</div>
+<div class="line">} ..._Type;</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html b/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html
new file mode 100644
index 0000000..b728a35
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>CPU Section</title>
+<title>CMSIS-SVD: CPU Section</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__cpu_section__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">CPU Section</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></div></div><!--header-->
+<div class="contents">
+<p>The CPU section describes the processor included in the microcontroller device. This section is mandatory if the SVD file shall be used for the device header file generation.</p>
+<pre>
+<span class="opt">&lt;cpu&gt;</span>
+ <span class="mand">&lt;name&gt;<em>cpuNameType</em>&lt;/name&gt;
+ &lt;revision&gt;<em>revisionType</em>&lt;/revision&gt;
+ &lt;endian&gt;<em>endianType</em>&lt;/endian&gt;
+ &lt;mpuPresent&gt;<em>xs:boolean</em>&lt;/mpuPresent&gt;
+ &lt;fpuPresent&gt;<em>xs:boolean</em>&lt;/fpuPresent&gt;
+ &lt;fpuDP&gt;<em>xs:boolean</em>&lt;/fpuDP&gt;
+ &lt;icachePresent&gt;<em>xs:boolean</em>&lt;/icachePresent&gt;
+ &lt;dcachePresent&gt;<em>xs:boolean</em>&lt;/dcachePresent&gt;
+ &lt;itcmPresent&gt;<em>xs:boolean</em>&lt;/itcmPresent&gt;
+ &lt;dtcmPresent&gt;<em>xs:boolean</em>&lt;/dtcmPresent&gt;
+ &lt;vtorPresent&gt;<em>xs:boolean</em>&lt;/vtorPresent&gt;
+ &lt;nvicPrioBits&gt;<em>scaledNonNegativeInteger</em>&lt;/nvicPrioBits&gt;
+ &lt;vendorSystickConfig&gt;<em>xs:boolean</em>&lt;/vendorSystickConfig&gt;
+ &lt;deviceNumInterrupts&gt;<em>scaledNonNegativeInteger</em>&lt;deviceNumInterrupts&gt;
+ &lt;sauNumRegions&gt;<em>scaledNonNegativeInteger</em>&lt;/sauRegions&gt;
+ &lt;sauRegionsConfig&gt;<em>sauRegionsConfigType</em>&lt;/sauRegionsConfig&gt;
+ </span>
+<span class="opt">&lt;/cpu&gt;</span>
+</pre><table class="cmtable" summary="CPU Section Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>The predefined tokens are:<ul>
+<li><span class="XML-Token">CM0</span>: ARM Cortex-M0</li>
+<li><span class="XML-Token">CM0PLUS</span>: ARM Cortex-M0+</li>
+<li><span class="XML-Token">CM3</span>: ARM Cortex-M3</li>
+<li><span class="XML-Token">CM4</span>: ARM Cortex-M4</li>
+<li><span class="XML-Token">CM7</span>: ARM Cortex-M7</li>
+<li><span class="XML-Token">SC000</span>: ARM Secure Core SC000</li>
+<li><span class="XML-Token">SC300</span>: ARM Secure Core SC300</li>
+<li><span class="XML-Token">other</span>: other processor architectures </li>
+</ul>
+</td><td>cpuNameType </td><td>1..1 </td></tr>
+<tr>
+<td>revisionType </td><td>Defines the HW revision of the processor. The defined version format is <span class="XML-Token">r<em>N</em>p<em>M</em></span> (N,M = [0 - 9]). </td><td>revisionType </td><td>1..1 </td></tr>
+<tr>
+<td>endian </td><td>Defines the endianess of the processor being one of:<ul>
+<li><span class="XML-Token">little</span>: little endian memory (least significant byte gets allocated at the lowest address).</li>
+<li><span class="XML-Token">big</span>: byte invariant big endian data organization (most significant byte gets allocated at the lowest address).</li>
+<li><span class="XML-Token">selectable</span>: little and big endian are configurable for the device and become active after the next reset.</li>
+<li><span class="XML-Token">other</span>: the endianess is neither little nor big endian. </li>
+</ul>
+</td><td>endianType </td><td>1..1 </td></tr>
+<tr>
+<td>mpuPresent </td><td>Indicates that the processor is equipped with a memory protection unit (MPU). This tag is either set to <span class="XML-Token">true</span> or <span class="XML-Token">false</span>, <span class="XML-Token">1</span> or <span class="XML-Token">0</span>. </td><td>boolean </td><td>1..1 </td></tr>
+<tr>
+<td>fpuPresent </td><td>Indicates that the processor is equipped with a hardware floating point unit (FPU). Cortex-M4 and Cortex-M7 are the only available Cortex-M processor with an optional FPU. This tag is either set to <span class="XML-Token">true</span> or <span class="XML-Token">false</span>, <span class="XML-Token">1</span> or <span class="XML-Token">0</span>. </td><td>boolean </td><td>1..1 </td></tr>
+<tr>
+<td>fpuDP </td><td>Indicates that the processor is equipped with a double precision floating point unit. Flag is only valid if fpuPresent is set true. Cortex-M7 is currently the only Cortex-M processor available with a double precision floating point unit. </td><td>boolean </td><td>0..1 </td></tr>
+<tr>
+<td>icachePresent </td><td>Indicates that the processor has an instruction cache. Note: only an option for Cortex-M7 based devices. </td><td>boolean </td><td>0..1 </td></tr>
+<tr>
+<td>dcachePresent </td><td>Indicates that the processor has an data cache. Note: only an option for Cortex-M7 based devices. </td><td>boolean </td><td>0..1 </td></tr>
+<tr>
+<td>itcmPresent </td><td>Indicates that the processor has an instruction tightly coupled memory. Note: only an option for Cortex-M7 based devices. </td><td>boolean </td><td>0..1 </td></tr>
+<tr>
+<td>dtcmPresent </td><td>Indicates that the processor has an data tightly coupled memory. Note: only an option for Cortex-M7 based devices. </td><td>boolean </td><td>0..1 </td></tr>
+<tr>
+<td>vtorPresent </td><td>This is an optional flag used for the Cortex-M0+ based devices only. It indicates whether the Vector Table Offset Register (VTOR) is implemented in the Cortex-M0+ device or not. This tag is either set to <span class="XML-Token">true</span> or <span class="XML-Token">false</span>, <span class="XML-Token">1</span> or <span class="XML-Token">0</span>. If it is not specified VTOR is assumed to be present. </td><td>boolean </td><td>1..1 </td></tr>
+<tr>
+<td>nvicPrioBits </td><td>Defines the number of bits that are available in the Nested Vectored Interrupt Controller (NVIC) for configuring the priority. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>vendorSystickConfig </td><td>Indicates whether the processor implements a vendor-specific System Tick Timer. If <span class="XML-Token">false</span>, then the ARM defined System Tick Timer is available. If <span class="XML-Token">true</span>, then a vendor-specific System Tick Timer must be implemented. This tag is either set to <span class="XML-Token">true</span> or <span class="XML-Token">false</span>, <span class="XML-Token">1</span> or <span class="XML-Token">0</span>. </td><td>boolean </td><td>1..1 </td></tr>
+<tr>
+<td>deviceNumInterrupts </td><td>Specifies the total number of interrupts implemented by the device. This value can be used to validate the number of described interrupts </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>sauNumRegions </td><td>If set and not zero this flag indicates that the device is equipped with a Security Attribution Unit (SAU) and the maximum number of available address regions. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>sauRegionsConfig </td><td><p class="starttd">If the Secure Attribution Unit is preconfigured by HW or Firmware, the settings are described here.</p>
+<p><span class="XML-Token">&lt;sauRegionsConfig</span> enabled=true protectionWhenDisabled="s"<span class="XML-Token">&gt;</span></p>
+<ul>
+<li><span class="XML-Token">&lt;base&gt;<em>adddress</em>&lt;/base&gt;</span>: SAU Region base adddress (type=scaledNonNegativeInteger) [1..1]</li>
+<li><span class="XML-Token">&lt;limit&gt;<em>address</em>&lt;/limit&gt;</span>: SAU Region limit adddress (type=scaledNonNegativeInteger) [1..1]</li>
+<li><span class="XML-Token">&lt;access&gt;<em>flag</em>&lt;/access&gt;</span>: one of "n" = non-secure or "c" = secure callable (type=string) [1..1]</li>
+<li>attribute: <span class="XML-Token">enabled =</span> [true|false]: SAU Region is active (type=boolean) [0..1]</li>
+<li>attribute: <span class="XML-Token">name =</span> [string]: brief name for identifying the SAU Region(type=string) [0..1]</li>
+</ul>
+<p class="endtd"><span class="XML-Token">&lt;/sauRegionsConfig&gt;</span></p>
+<ul>
+<li>attribute: <span class="XML-Token">enabled =</span> [true|false]: enable/disable the complete SAU (type=boolean) [0..1]</li>
+<li>attribute: <span class="XML-Token">protectionWhenDisabled =</span> [s|n]: if the complete SAU is disabled the whole memory is treated either "s" = secure or "n" non-secure - [0..1] (default="s") </li>
+</ul>
+</td><td>SauRegionsConfigType </td><td><p class="starttd">0..1 </p>
+<p class="endtd"></p>
+</td></tr>
+</table>
+<h1><a class="anchor" id="cpuSection_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;cpu&gt;</div>
+<div class="line"> &lt;name&gt;CM7&lt;/name&gt; </div>
+<div class="line"> &lt;revision&gt;r0p0&lt;/revision&gt;</div>
+<div class="line"> &lt;endian&gt;little&lt;/endian&gt;</div>
+<div class="line"> &lt;mpuPresent&gt;<span class="keyword">true</span>&lt;/mpuPresent&gt;</div>
+<div class="line"> &lt;!-- has <span class="keywordtype">double</span> precision FPU --&gt;</div>
+<div class="line"> &lt;fpuPresent&gt;<span class="keyword">true</span>&lt;/fpuPresent&gt;</div>
+<div class="line"> &lt;fpuDP&gt;<span class="keyword">true</span>&lt;/fpuDP&gt;</div>
+<div class="line"> &lt;!-- has instruction and data cache --&gt;</div>
+<div class="line"> &lt;icachePresent&gt;<span class="keyword">true</span>&lt;/icachePresent&gt;</div>
+<div class="line"> &lt;dcachePresent&gt;<span class="keyword">true</span>&lt;/dcachePresent&gt;</div>
+<div class="line"> &lt;!-- has no instruction nor data tighly coupled memory --&gt;</div>
+<div class="line"> &lt;itcmPresent&gt;<span class="keyword">false</span>&lt;/itcmPresent&gt;</div>
+<div class="line"> &lt;dtcmPresent&gt;<span class="keyword">false</span>&lt;/dtcmPresent&gt;</div>
+<div class="line"> &lt;nvicPrioBits&gt;4&lt;/nvicPrioBits&gt;</div>
+<div class="line"> &lt;vendorSystickConfig&gt;<span class="keyword">false</span>&lt;/vendorSystickConfig&gt; </div>
+<div class="line">&lt;/cpu&gt;</div>
+<div class="line">...</div>
+</div><!-- fragment --><p>This example describes a device based on a Cortex-M7 core of HW revision r0p0, with fixed little endian memory scheme, including Memory Protection Unit and double precision hardware Floating Point Unit. It has and instruction and a data cache but no Tightly Coupled Memories. The Nested Vectored Interrupt Controller uses 4 bits for configuring the priority of an interrupt. It is equipped with the standard System Tick Timer as defined by ARM. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html
new file mode 100644
index 0000000..a4a279e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Extensions to the Device Section</title>
+<title>CMSIS-SVD: Extensions to the Device Section</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__device_section_extensions__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Extensions to the Device Section</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></div></div><!--header-->
+<div class="contents">
+<p>A number of elements have been added to the device section. These elements are optional but are highly recommended to enable the generation of consistent and CMSIS-compliant device header files from SVD descriptions.</p>
+<pre>
+<span class="mand"><b>&lt;device schemaVersion=<em>"xs:decimal"</em> xmlns:xs=<em>"http://www.w3.org/2001/XMLSchema-instance"</em> xs:noNamespaceSchemaLocation=<em>"CMSIS-SVD_Schema_1_1.xsd"</em>&gt;</b>
+ <span class="opt">&lt;vendor&gt;<em>stringType</em>&lt;/vendor&gt;
+ &lt;vendorID&gt;<em>stringType</em>&lt;/vendorID&gt;</span>
+ &lt;name&gt;<em>identifierType</em>&lt;/name&gt;<span class="opt">
+ &lt;series&gt;<em>stringType</em>&lt;/series&gt;</span>
+ &lt;version&gt;<em>xs:string</em>&lt;/version&gt;
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;<span class="opt">
+ &lt;licenseText&gt;<em>xs:string</em>&lt;/licenseText&gt;
+ &lt;cpu&gt;<em>cpuType</em>&lt;/cpu&gt;
+ &lt;headerSystemFilename&gt;<em>identifierType</em>&lt;/headerSystemFilename&gt;
+ &lt;headerDefinitionsPrefix&gt;<em>identifierType</em>&lt;/headerDefinitionsPrefix&gt;
+</span>
+ ...
+<b>&lt;/device&gt;</b>
+</span>
+</pre><table class="cmtable" summary="Device Section Extension Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>vendor </td><td>This specifies the vendor of the device using the full name. </td><td>stringType </td><td>0..1 </td></tr>
+<tr>
+<td>vendorID </td><td>This specifies the vendor of the device using the vendor abbreviation that does not contain any spaces or special characters. This information shall be used for defining the directory. </td><td>stringType </td><td>0..1 </td></tr>
+<tr>
+<td>series </td><td>This element specifies the name of the device series. </td><td>stringType </td><td>0..1 </td></tr>
+<tr>
+<td>licenseText </td><td>The content of this tag will be copied into the header section of the generated device header file and shall contain the legal disclaimer. New lines can be inserted by using "\n". This section is mandatory if the SVD file shall be used for generating the device header file. </td><td>stringType </td><td>0..1 </td></tr>
+<tr>
+<td>headerSystemFilename </td><td>This tag specifies the file name (without extension) of the device-specific system include file (<code>system_&lt;device&gt;.h</code>; See CMSIS-Core description). This tag is used by the header file generator for customizing the include statement referencing the CMSIS system file within the CMSIS device header file. By default, the filename is "&lt;kbd&gt;system_&lt;i&gt;device:name&lt;/i&gt;.h". In cases where a device series shares a single system header file, the name of the series shall be used instead of the individual device name. </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>headerDefinitionsPrefix </td><td>The element specifies the string being prepended to all type definition names generated in the CMSIS-Core device header file. This is used if the silicon vendor's software requires vendor-specific types in order to avoid name clashes with other definied types. </td><td>identifierType </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="deviceSectionExtensions_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;device schemaVersion=<span class="stringliteral">&quot;1.1&quot;</span> xmlns:xs=<span class="stringliteral">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span> xs:noNamespaceSchemaLocation=<span class="stringliteral">&quot;CMSIS-SVD.xsd&quot;</span>&gt;</div>
+<div class="line"> &lt;vendor&gt;Advanced RISC Machines&lt;/vendor&gt;</div>
+<div class="line"> &lt;vendorID&gt;ARM&lt;/vendorID&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;series&gt;ARMCM3&lt;/series&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;licenseText&gt;</div>
+<div class="line"> ARM Limited (ARM) is supplying this software for use with Cortex-M \n</div>
+<div class="line"> processor based microcontrollers. This file can be freely distributed \n</div>
+<div class="line"> within development tools that are supporting such ARM based processors. \n</div>
+<div class="line"> \n</div>
+<div class="line"> THIS SOFTWARE IS PROVIDED &quot;AS IS&quot;. NO WARRANTIES, WHETHER EXPRESS, IMPLIED \n</div>
+<div class="line"> OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF \n</div>
+<div class="line"> MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. \n</div>
+<div class="line"> ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR \n</div>
+<div class="line"> CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.</div>
+<div class="line"> &lt;/licenseText&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;headerSystemFilename&gt;system_ARMCM4&lt;/headeSystemFilename&gt;</div>
+<div class="line"> &lt;headerDefinitionsPrefix&gt;ARM_&lt;/headerDefinitionsPrefix&gt;</div>
+<div class="line"> ...</div>
+<div class="line">&lt;/device&gt; </div>
+<div class="line">...</div>
+</div><!-- fragment --><p>This example describes a device from the vendor <b>Advanced RISC Machines</b> using <b>ARM</b> as short name. The device belongs to the device family identified by <b>ARMCM4</b>. The legal disclaimer in the header files generated from this description is captured and formatted in accordance to the standard ARM CMSIS disclaimer. The CMSIS system file included by the generated device header file is named <b>system_ARMCM4.h</b> and all type definitions will be prepended with <b>ARM_</b>. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html b/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html
new file mode 100644
index 0000000..307f9b8
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>dimElementGroup</title>
+<title>CMSIS-SVD: dimElementGroup</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__dim_element_group__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">dimElementGroup</div> </div>
+<div class="ingroups"><a class="el" href="group__elem__type__gr.html">Element Groups</a></div></div><!--header-->
+<div class="contents">
+<p>The SVD specification supports the array-of-registers concept. The single register description gets duplicated automatically into an array. The size of the array is specified by the &lt;dim&gt; element. The register names can be composed by the register name and an index-specific substring defined in &lt;dimIndex&gt;. The &lt;dimIncrement&gt; specifies the address offset between two registers. The elements below can be used to generate an array of registers.</p>
+<table class="cmtable" summary="dimElementGroup Description">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>dim </td><td>The value defines the number of elements in an array of registers. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>dimIncrement </td><td>If dim is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring registers of the register array in the address map. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>dimIndex </td><td>Specifies the substrings that replaces the <em>%s</em> placeholder within the register name. By default, the index is a decimal value starting with 0 for the first register. </td><td>dimIndexType </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="dimElementGroup_ex"></a>
+Examples:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;dim&gt;6&lt;/dim&gt; </div>
+<div class="line"> &lt;dimIncrement&gt;4&lt;/dimIncrement&gt; </div>
+<div class="line"> &lt;dimIndex&gt;A,B,C,D,E,Z&lt;/dimIndex&gt; </div>
+<div class="line"> &lt;name&gt;GPIO_%s_CTRL&lt;/name&gt; </div>
+<div class="line">...</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+</div><!-- fragment --><p>The code above generates: =&gt; GPIO_A_CTRL, GPIO_B_CTRL, GPIO_C_CTRL, GPIO_D_CTRL, GPIO_E_CTRL, GPIO_Z_CTRL</p>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;dim&gt;4&lt;/dim&gt; </div>
+<div class="line"> &lt;dimIncrement&gt;4&lt;/dimIncrement&gt; </div>
+<div class="line"> &lt;dimIndex&gt;3-6&lt;/dimIndex&gt; </div>
+<div class="line"> &lt;name&gt;IRQ%s&lt;/name&gt; </div>
+<div class="line">...</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+</div><!-- fragment --><p>The example above generates: =&gt; IRQ3, IRQ4, IRQ5, IRQ6 </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__elem__type__gr.html b/CMSIS/Documentation/SVD/html/group__elem__type__gr.html
new file mode 100644
index 0000000..527ca00
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__elem__type__gr.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Element Groups</title>
+<title>CMSIS-SVD: Element Groups</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__elem__type__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#groups">Content</a> </div>
+ <div class="headertitle">
+<div class="title">Element Groups</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
+Content</h2></td></tr>
+<tr class="memitem:group__dim_element_group__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dim_element_group__gr.html">dimElementGroup</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__register_properties_group__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__register_properties_group__gr.html">registerPropertiesGroup</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__protection_string_type__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__protection_string_type__gr.html">protectionStringType_gr</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__elem__type__gr.js b/CMSIS/Documentation/SVD/html/group__elem__type__gr.js
new file mode 100644
index 0000000..f7906f3
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__elem__type__gr.js
@@ -0,0 +1,6 @@
+var group__elem__type__gr =
+[
+ [ "dimElementGroup", "group__dim_element_group__gr.html", null ],
+ [ "registerPropertiesGroup", "group__register_properties_group__gr.html", null ],
+ [ "protectionStringType_gr", "group__protection_string_type__gr.html", null ]
+]; \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html
new file mode 100644
index 0000000..5545fe3
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Extensions to the Peripheral Section</title>
+<title>CMSIS-SVD: Extensions to the Peripheral Section</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__peripheral_section_extensions__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Extensions to the Peripheral Section</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></div></div><!--header-->
+<div class="contents">
+<p>The following elements have been added to the peripheral section. All new elements are optional but are highly recommended to enable the generation of consistent and CMSIS-compliant device header files from SVD descriptions.</p>
+<table class="cmtable" summary="Peripheral Section Extension Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>alternatePeripheral </td><td>All address blocks in the memory space of a device are assigned to a unique peripheral by default. If there are multiple peripherals describing the same address blocks, this needs to be specified explicitly. A peripheral redefining an address block needs to specify the name of the peripheral that is listed first in the description. If no alternate peripheral is specified, then the <em>SVDConv</em> utility will generate errors. </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>headerStructName </td><td>The header file generator uses the name of a peripheral as the base name for the C structure type. If this element is specfied, then this string is used instead of the peripheral name. This is particularly useful when multiple peripherals get derived from a peripheral description and a generic type name shall be used. </td><td>identifierType </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="periperalSectionExtensions_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">&lt;peripheral&gt;</div>
+<div class="line"> &lt;name&gt;Timer1&lt;/name&gt;</div>
+<div class="line"> &lt;version&gt;1.0&lt;/version&gt;</div>
+<div class="line"> &lt;description&gt;Timer 1 is a standard timer ... &lt;/description&gt;</div>
+<div class="line"> &lt;baseAddress&gt;0x40002000&lt;/baseAddress&gt;</div>
+<div class="line"> ...</div>
+<div class="line">&lt;/peripheral&gt;</div>
+<div class="line">&lt;peripheral&gt;</div>
+<div class="line"> &lt;name&gt;Timer1_Alt&lt;/name&gt;</div>
+<div class="line"> &lt;version&gt;1.0&lt;/version&gt;</div>
+<div class="line"> &lt;description&gt;Alternate Timer 1 is a special timer execution mode ... &lt;/description&gt;</div>
+<div class="line"> &lt;baseAddress&gt;0x40002000&lt;/baseAddress&gt;</div>
+<div class="line"> &lt;alternatePeripheral&gt;Timer1&lt;/alternatePeripheral&gt;</div>
+<div class="line"> ...</div>
+<div class="line">&lt;/peripheral&gt;</div>
+</div><!-- fragment --><p>Two timer peripheral descriptions are specified for the same memory block. No redefined addresses will be reported for both peripherals. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html b/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html
new file mode 100644
index 0000000..f4730c7
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>protectionStringType_gr</title>
+<title>CMSIS-SVD: protectionStringType_gr</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__protection_string_type__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">protectionStringType_gr</div> </div>
+<div class="ingroups"><a class="el" href="group__elem__type__gr.html">Element Groups</a></div></div><!--header-->
+<div class="contents">
+<p>The protection element specify security priviliges for a successfull access to an address block, individual register or all registers within the given scope (Version 1.3). This information is relevant for both the programmer as well as the debugger if it is not granted universal access permissions. If no specific information is provided a register is accessible in any mode non-secure and secure mode.</p>
+<h1><a class="anchor" id="protection_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">&lt;device schemaVersion=<span class="stringliteral">&quot;1.3&quot;</span> xmlns:xs=<span class="stringliteral">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span> xs:noNamespaceSchemaLocation=<span class="stringliteral">&quot;CMSIS-SVD.xsd&quot;</span>&gt;</div>
+<div class="line"> &lt;name&gt;ARM_Cortex_M3&lt;/name&gt;</div>
+<div class="line"> &lt;version&gt;0.1&lt;/version&gt;</div>
+<div class="line"> &lt;description&gt;ARM Cortex-M3 based Microcontroller demonstration device&lt;/description&gt;</div>
+<div class="line"> &lt;addressUnitBits&gt;8&lt;/addressUnitBits&gt;</div>
+<div class="line"> &lt;width&gt;32&lt;/width&gt;</div>
+<div class="line"> &lt;size&gt;32&lt;/size&gt;</div>
+<div class="line"> &lt;access&gt;read-write&lt;/access&gt;</div>
+<div class="line"> &lt;protection&gt;s&lt;/protection&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;peripherals&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/peripherals&gt;</div>
+<div class="line">&lt;/device&gt;</div>
+</div><!-- fragment --><p>In the example above the read and write accesses to all registers of the device require to be secure mode accesses. Note that this default can be refined on subsequent levels of the description.</p>
+<table class="cmtable" summary="ProtectionType Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Access Type </th><th>Occurrence </th></tr>
+<tr>
+<td>secure </td><td>Specifies the access type that requires "secure" mode access for a successful access to the register(s). </td><td><ul>
+<li>"s" = secure permission required for access</li>
+<li>"n" = non-secure or secure permission required for access </li>
+</ul>
+</td><td>0..1 </td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html b/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html
new file mode 100644
index 0000000..9b2e93e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html
@@ -0,0 +1,114 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>registerPropertiesGroup</title>
+<title>CMSIS-SVD: registerPropertiesGroup</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__register_properties_group__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">registerPropertiesGroup</div> </div>
+<div class="ingroups"><a class="el" href="group__elem__type__gr.html">Element Groups</a></div></div><!--header-->
+<div class="contents">
+<p>Register properties can be set on device, peripheral, and register level. Element values defined on a lower level overwrite element values defined on a more general level. For example, the <em>register-level.&lt;size&gt;</em> will overwrite <em>peripheral-level.&lt;size&gt;</em>. Elements that have not been defined on a more general level, must be defined at register level at the latest.</p>
+<table class="cmtable" summary="Register Properties Group Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>size </td><td>Defines the default bit-width of any register contained in the device (implicit inheritance). This element can be redefined on any lower level of the description using the size element there. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>access </td><td>Defines the default access rights for all registers. Access rights can be redefined on any lower level of the description using the <em>access</em> element there. <br/>
+ <br/>
+ The predefined tokens are:<ul>
+<li><span class="XML-Token">read-only</span>: read access is permitted. Write operations have an undefined result.</li>
+<li><span class="XML-Token">write-only</span>: write access is permitted. Read operations have an undefined result.</li>
+<li><span class="XML-Token">read-write</span>: both read and write accesses are permitted. Writes affect the state of the register and reads return a value related to the register.</li>
+<li><span class="XML-Token">writeOnce</span>: only the first write after reset has an effect on the register. Read operations deliver undefined results.</li>
+<li><span class="XML-Token">read-writeOnce</span>: Read operations deliver a result related to the register content. Only the first write access to this register after a reset will have an effect on the register content. </li>
+</ul>
+</td><td>accessType </td><td>0..1 </td></tr>
+<tr>
+<td>protection </td><td>Defines the protection settings for a register. A device can have registers protected from access by the programmer and debugger. </td><td><a class="el" href="group__protection_string_type__gr.html">protectionStringType</a> </td><td>0..1 </td></tr>
+<tr>
+<td>resetValue </td><td>Defines the default value for all registers at RESET. The default register value can be redefined on any lower level using the <em>resetValue</em> element there. The actual reset value is calculated from the <em>resetValue</em> and the <em>resetMask</em>. The mask is used to specify bits with an undefined reset value. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>resetMask </td><td>Identifies which register bits have a defined reset value. These bit positions are set to one. Bit positions with an undefined reset value are set to zero. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html
new file mode 100644
index 0000000..f62ed8b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Extensions to the Register Section</title>
+<title>CMSIS-SVD: Extensions to the Register Section</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__register_section_extensions__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Extensions to the Register Section</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></div></div><!--header-->
+<div class="contents">
+<p>The following elements have been added to the register section. All new elements are optional.</p>
+<table class="cmtable" summary="Register Section Extension Elements">
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>alternateRegister </td><td>This tag can reference a register that has been defined above to current location in the description and that describes the memory location already. This tells the SVDConv's address checker that the redefinition of this particular register is intentional. The register name needs to be unique within the scope of the current peripheral. A register description is defined either for a unique address location or could be a redefinition of an already described address. In the latter case, the register can be either marked <em>alternateRegister</em> and needs to have a unique name, or it can have the same register name but is assigned to a register subgroup through the tag <em>alternateGroup</em> (specified in version 1.0). </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>dataType </td><td>It can be useful to assign a specific native C datatype to a register. This helps avoiding type casts. For example, if a 32 bit register shall act as a pointer to a 32 bit unsigned data item, then <em>dataType</em> can be set to "uint32_t *". The following simple data types are predefined:<ul>
+<li><span class="XML-Token">uint8_t</span>: unsigned byte</li>
+<li><span class="XML-Token">uint16_t</span>: unsigned half word</li>
+<li><span class="XML-Token">uint32_t</span>: unsigned word</li>
+<li><span class="XML-Token">uint64_t</span>: unsigned double word</li>
+<li><span class="XML-Token">int8_t</span>: signed byte</li>
+<li><span class="XML-Token">int16_t</span>: signed half word</li>
+<li><span class="XML-Token">int32_t</span>: signed world</li>
+<li><span class="XML-Token">int64_t</span>: signed double word</li>
+<li><span class="XML-Token">uint8_t *</span>: pointer to unsigned byte</li>
+<li><span class="XML-Token">uint16_t *</span>: pointer to unsigned half word</li>
+<li><span class="XML-Token">uint32_t *</span>: pointer to unsigned word</li>
+<li><span class="XML-Token">uint64_t *</span>: pointer to unsigned double word</li>
+<li><span class="XML-Token">int8_t *</span>: pointer to signed byte</li>
+<li><span class="XML-Token">int16_t *</span>: pointer to signed half word</li>
+<li><span class="XML-Token">int32_t *</span>: pointer to signed world</li>
+<li><span class="XML-Token">int64_t *</span>: pointer to signed double word </li>
+</ul>
+</td><td>dataTypeType </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="registerSection_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;TIM_MODEA&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;In mode A <span class="keyword">this</span> <span class="keyword">register</span> acts as a reload value&lt;/description&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0xC&lt;/addressOffset&gt;</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;TIM_MODEB&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;In mode B <span class="keyword">this</span> <span class="keyword">register</span> acts as the compare value&lt;/description&gt;</div>
+<div class="line"> &lt;alternateRegister&gt;TIM_MODEA&lt;/alternateRegister&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0xC&lt;/addressOffset&gt;</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;DMA_DATA&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;This <span class="keyword">register</span> contains the address of the data being transferred&lt;/description&gt;</div>
+<div class="line"> &lt;dataType&gt;uint32_t *&lt;/dataType&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0xf0&lt;/addressOffset&gt;</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line">...</div>
+</div><!-- fragment --><p>This example describes two registers, TIM_MODEA and TIM_MODEB. Both have the same address offset. Based on the configured operation model being A or B, the register acts as reload or compare value. The register DMA_DATA is specified as a pointer to unsigned word data. The code generated for the device header file is:</p>
+<div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __IO uint32_t TIM_MODEA;</div>
+<div class="line"> __IO uint32_t TIM_MODEB;</div>
+<div class="line"> };</div>
+<div class="line"> __IO uint32_t * DMA_DATA; </div>
+<div class="line"> ...</div>
+<div class="line">} &lt;peripheral:name&gt;_Type;</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html b/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html
new file mode 100644
index 0000000..b64cc4a
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html
@@ -0,0 +1,711 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>CMSIS-SVD Schema File</title>
+<title>CMSIS-SVD: CMSIS-SVD Schema File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__schema__1__2__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">CMSIS-SVD Schema File</div> </div>
+</div><!--header-->
+<div class="contents">
+<pre class="fragment">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;!--
+ date: 22.10.2015
+
+ Copyright (C) 2011 - 2015 ARM Limited. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ - Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ - Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ - Neither the name of ARM nor the names of its contributors may be used
+ to endorse or promote products derived from this software without
+ specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+ This is CMSIS-SVD
+
+ Version 1.3.1:
+ fixed peripheral name element type to identifierType to support %s for peripheral arrays
+ added optional protection element to addressBlockType and added p=privileged
+
+ Version 1.3:
+ added dim to peripherals to describe an array of peripherals.
+ added nesting of clusters to support hierarchical register structures.
+ added protection element as part of the registerPropertiesGroup indicating
+ special permissions are required for accessing a register.
+ CPU Section extended with description of the Secure Attribution Unit.
+
+ Version 1.2:
+ Cortex-M7 support items have been added as optional tags for the device header file generation:
+ fpuDP, icachePresent, dcachePresent, itcmPresent, dtcmPresent
+
+ Version 1.1:
+ For backward compatibility all additional tags have been made optional.
+ Extensions may be mandatory for successful device header file generation
+ Other changes are related to some restructuring of the schema.
+
+ Note that the memory section has been removed since this would limit the
+ reuse of descriptions for a series of devices.
+ --&gt;
+
+&lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.3"&gt;
+ &lt;!-- stringType requires a none empty string of a least one character length --&gt;
+ &lt;xs:simpleType name="stringType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:minLength value="1"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- cpuType specifies a selection of Cortex-M and Secure-Cores. This list will get extended as new processors are released --&gt;
+ &lt;xs:simpleType name="cpuNameType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="CM0"/&gt;
+ &lt;xs:enumeration value="CM0PLUS"/&gt;
+ &lt;xs:enumeration value="CM0+"/&gt;
+ &lt;xs:enumeration value="CM1"/&gt;
+ &lt;xs:enumeration value="SC000"/&gt;
+ &lt;xs:enumeration value="CM3"/&gt;
+ &lt;xs:enumeration value="SC300"/&gt;
+ &lt;xs:enumeration value="CM4"/&gt;
+ &lt;xs:enumeration value="CM7"/&gt;
+ &lt;xs:enumeration value="CA5"/&gt;
+ &lt;xs:enumeration value="CA7"/&gt;
+ &lt;xs:enumeration value="CA8"/&gt;
+ &lt;xs:enumeration value="CA9"/&gt;
+ &lt;xs:enumeration value="CA15"/&gt;
+ &lt;xs:enumeration value="CA17"/&gt;
+ &lt;xs:enumeration value="CA53"/&gt;
+ &lt;xs:enumeration value="CA57"/&gt;
+ &lt;xs:enumeration value="CA72"/&gt;
+ &lt;xs:enumeration value="other"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- revisionType specifies the CPU revision format as defined by ARM (rNpM) --&gt;
+ &lt;xs:simpleType name="revisionType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="r[0-9]p[0-9]"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- EndianType pre-defines the tokens for specifying the endianess of the device --&gt;
+ &lt;xs:simpleType name="endianType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="little"/&gt;
+ &lt;xs:enumeration value="big"/&gt;
+ &lt;xs:enumeration value="selectable"/&gt;
+ &lt;xs:enumeration value="other"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- dataType pre-defines the tokens in line with CMSIS data type definitions --&gt;
+ &lt;xs:simpleType name="dataTypeType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="uint8_t"/&gt;
+ &lt;xs:enumeration value="uint16_t"/&gt;
+ &lt;xs:enumeration value="uint32_t"/&gt;
+ &lt;xs:enumeration value="uint64_t"/&gt;
+ &lt;xs:enumeration value="int8_t"/&gt;
+ &lt;xs:enumeration value="int16_t"/&gt;
+ &lt;xs:enumeration value="int32_t"/&gt;
+ &lt;xs:enumeration value="int64_t"/&gt;
+ &lt;xs:enumeration value="uint8_t *"/&gt;
+ &lt;xs:enumeration value="uint16_t *"/&gt;
+ &lt;xs:enumeration value="uint32_t *"/&gt;
+ &lt;xs:enumeration value="uint64_t *"/&gt;
+ &lt;xs:enumeration value="int8_t *"/&gt;
+ &lt;xs:enumeration value="int16_t *"/&gt;
+ &lt;xs:enumeration value="int32_t *"/&gt;
+ &lt;xs:enumeration value="int64_t *"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- nvicPrioBitsType specifies the integer value range for the number of bits used in NVIC to encode priority levels --&gt;
+ &lt;xs:simpleType name="nvicPrioBitsType"&gt;
+ &lt;xs:restriction base="xs:integer"&gt;
+ &lt;xs:minInclusive value="2"/&gt;
+ &lt;xs:maxInclusive value="8"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- identifierType specifies the subset and sequence of characters used for specifying identifiers within the description. --&gt;
+ &lt;!-- this is particularly important as these are used in ANSI C Structures during the device header file generation --&gt;
+ &lt;xs:simpleType name="identifierType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="((%s)[_A-Za-z]{1}[_A-Za-z0-9]*)|([_A-Za-z]{1}[_A-Za-z0-9]*(\[%s\])?)|([_A-Za-z]{1}[_A-Za-z0-9]*(%s)?[_A-Za-z0-9]*)"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- enumerationNameType specifies the subset and sequence of characters used for specifying names of enumeratedValues. --&gt;
+ &lt;!-- this is particularly important as these are used in ANSI C Structures during the device header file generation --&gt;
+ &lt;xs:simpleType name="enumerationNameType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="[_A-Za-z0-9]*"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- V1.3: Protection Access Attribute Strings --&gt;
+ &lt;xs:simpleType name="protectionStringType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;!-- s = Secure --&gt;
+ &lt;!-- n = Non-secure --&gt;
+ &lt;!-- p = Privileged --&gt;
+ &lt;xs:pattern value="[snp]"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- V1.3: SAU Access Type --&gt;
+ &lt;xs:simpleType name="sauAccessType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;!-- c = non-secure Callable / Secure --&gt;
+ &lt;!-- n = Non-secure --&gt;
+ &lt;xs:pattern value="[cn]"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+
+ &lt;!-- dimIndexType specifies the subset and sequence of characters used for specifying the sequence of indices in register arrays --&gt;
+ &lt;xs:simpleType name="dimIndexType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="[0-9]+\-[0-9]+|[A-Z]-[A-Z]|[_0-9a-zA-Z]+(,\s*[_0-9a-zA-Z]+)+"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- scaledNonNegativeInteger specifies the format in which numbers are represented in hexadecimal or decimar format --&gt;
+ &lt;xs:simpleType name="scaledNonNegativeInteger"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="[+]?(0x|0X|#)?[0-9a-fA-F]+[kmgtKMGT]?"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- enumeratedValueDataType specifies the number formats for the values in enumeratedValues --&gt;
+ &lt;xs:simpleType name="enumeratedValueDataType"&gt;
+ &lt;xs:restriction base="xs:string"&gt;
+ &lt;xs:pattern value="[+]?(0x|0X|#)?[0-9a-fxA-FX]+"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- accessType specfies the pre-defined tokens for the available accesses --&gt;
+ &lt;xs:simpleType name="accessType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="read-only"/&gt;
+ &lt;xs:enumeration value="write-only"/&gt;
+ &lt;xs:enumeration value="read-write"/&gt;
+ &lt;xs:enumeration value="writeOnce"/&gt;
+ &lt;xs:enumeration value="read-writeOnce"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- modifiedWriteValuesType specifies the pre-defined tokens for the write side effects --&gt;
+ &lt;xs:simpleType name="modifiedWriteValuesType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="oneToClear"/&gt;
+ &lt;xs:enumeration value="oneToSet"/&gt;
+ &lt;xs:enumeration value="oneToToggle"/&gt;
+ &lt;xs:enumeration value="zeroToClear"/&gt;
+ &lt;xs:enumeration value="zeroToSet"/&gt;
+ &lt;xs:enumeration value="zeroToToggle"/&gt;
+ &lt;xs:enumeration value="clear"/&gt;
+ &lt;xs:enumeration value="set"/&gt;
+ &lt;xs:enumeration value="modify"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- readAction type specifies the pre-defined tokens for read side effects --&gt;
+ &lt;xs:simpleType name="readActionType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="clear"/&gt;
+ &lt;xs:enumeration value="set"/&gt;
+ &lt;xs:enumeration value="modify"/&gt;
+ &lt;xs:enumeration value="modifyExternal"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- enumUsageType specifies the pre-defined tokens for selecting what access types an enumeratedValues set is associated with --&gt;
+ &lt;xs:simpleType name="enumUsageType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="read"/&gt;
+ &lt;xs:enumeration value="write"/&gt;
+ &lt;xs:enumeration value="read-write"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- bitRangeType specifies the bit numbers to be restricted values from 0 - 69 --&gt;
+ &lt;xs:simpleType name="bitRangeType"&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:pattern value="\[([0-4])?[0-9]:([0-4])?[0-9]\]"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;!-- writeContraintType specifies how to describe the restriction of the allowed values that can be written to a resource --&gt;
+ &lt;xs:complexType name="writeConstraintType"&gt;
+ &lt;xs:choice&gt;
+ &lt;xs:element name="writeAsRead" type="xs:boolean"/&gt;
+ &lt;xs:element name="useEnumeratedValues" type="xs:boolean"/&gt;
+ &lt;xs:element name="range"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="minimum" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="maximum" type="scaledNonNegativeInteger"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:choice&gt;
+ &lt;/xs:complexType&gt;
+ &lt;!-- addressBlockType specifies the elements to describe an address block --&gt;
+ &lt;xs:complexType name="addressBlockType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="offset" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="size" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="usage"&gt;
+ &lt;xs:simpleType&gt;
+ &lt;xs:restriction base="xs:token"&gt;
+ &lt;xs:enumeration value="registers"/&gt;
+ &lt;xs:enumeration value="buffer"/&gt;
+ &lt;xs:enumeration value="reserved"/&gt;
+ &lt;/xs:restriction&gt;
+ &lt;/xs:simpleType&gt;
+ &lt;/xs:element&gt;
+ &lt;!-- Version 1.3.2: optional access protection for an address block s=secure n=non-secure p=privileged --&gt;
+ &lt;xs:element name="protection" type="protectionStringType" minOccurs="0"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;!-- interruptType specifies how to describe an interrupt associated with a peripheral --&gt;
+ &lt;xs:complexType name="interruptType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="name" type="stringType"/&gt;
+ &lt;xs:element name="description" type="xs:string" minOccurs="0"/&gt;
+ &lt;xs:element name="value" type="xs:integer"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;!-- register properties group specifies register size, access permission and reset value
+ this is used in multiple locations. Settings are inherited downstream. --&gt;
+ &lt;xs:group name="registerPropertiesGroup"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="size" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;xs:element name="access" type="accessType" minOccurs="0"/&gt;
+ &lt;!-- V 1.3: extended register access protection --&gt;
+ &lt;xs:element name="protection" type="protectionStringType" minOccurs="0"/&gt;
+ &lt;xs:element name="resetValue" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;xs:element name="resetMask" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:group&gt;
+ &lt;!-- bitRangeLsbMsbStyle specifies the bit position of a field within a register
+ by specifying the least significant and the most significant bit position --&gt;
+ &lt;xs:group name="bitRangeLsbMsbStyle"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="lsb" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="msb" type="scaledNonNegativeInteger"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:group&gt;
+ &lt;!-- bitRangeOffsetWidthStyle specifies the bit position of a field within a register
+ by specifying the least significant bit position and the bitWidth of the field --&gt;
+ &lt;xs:group name="bitRangeOffsetWidthStyle"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="bitOffset" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="bitWidth" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:group&gt;
+ &lt;!-- dimElementGroup specifies the number of array elements (dim), the address offset
+ between to consecutive array elements and an a comma seperated list of strings
+ being used for identifying each element in the array --&gt;
+ &lt;xs:group name="dimElementGroup"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="dim" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="dimIncrement" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="dimIndex" type="dimIndexType" minOccurs="0"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:group&gt;
+
+ &lt;xs:complexType name="cpuType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- V1.1: ARM processor name: Cortex-Mx / SCxxx --&gt;
+ &lt;xs:element name="name" type="cpuNameType"/&gt;
+ &lt;!-- V1.1: ARM defined revision of the cpu --&gt;
+ &lt;xs:element name="revision" type="revisionType"/&gt;
+ &lt;!-- V1.1: Endian specifies the endianess of the processor/device --&gt;
+ &lt;xs:element name="endian" type="endianType"/&gt;
+ &lt;!-- V1.1: mpuPresent specifies whether or not a memory protection unit is physically present --&gt;
+ &lt;xs:element name="mpuPresent" type="xs:boolean"/&gt;
+ &lt;!-- V1.1: fpuPresent specifies whether or not a floating point hardware unit is physically present --&gt;
+ &lt;xs:element name="fpuPresent" type="xs:boolean"/&gt;
+ &lt;!-- V1.2: fpuDP specifies a double precision floating point hardware unit is physically present--&gt;
+ &lt;xs:element name="fpuDP" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.2: icachePresent specifies that an instruction cache is physically present--&gt;
+ &lt;xs:element name="icachePresent" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.2: dcachePresent specifies that a data cache is physically present--&gt;
+ &lt;xs:element name="dcachePresent" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.2: itcmPresent specifies that an instruction tightly coupled memory is physically present--&gt;
+ &lt;xs:element name="itcmPresent" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.2: dtcmPresent specifies that an data tightly coupled memory is physically present--&gt;
+ &lt;xs:element name="dtcmPresent" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.1: vtorPresent is used for Cortex-M0+ based devices only. It indicates whether the Vector --&gt;
+ &lt;!-- Table Offset Register is implemented in the device or not --&gt;
+ &lt;xs:element name="vtorPresent" type="xs:boolean" minOccurs="0"/&gt;
+ &lt;!-- V1.1: nvicPrioBits specifies the number of bits used by the Nested Vectored Interrupt Controller --&gt;
+ &lt;!-- for defining the priority level = # priority levels --&gt;
+ &lt;xs:element name="nvicPrioBits" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- V1.1: vendorSystickConfig is set true if a custom system timer is implemented in the device --&gt;
+ &lt;!-- instead of the ARM specified SysTickTimer --&gt;
+ &lt;xs:element name="vendorSystickConfig" type="xs:boolean"/&gt;
+ &lt;!-- V1.3: reports the total number of interrupts implemented by the device (optional) --&gt;
+ &lt;xs:element name="deviceNumInterrupts" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;!-- V1.3: sauRegions specifies the available number of address regions --&gt;
+ &lt;!-- if not specified a value of zero is assumed --&gt;
+ &lt;xs:element name="sauNumRegions" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
+ &lt;!-- V1.3: SAU Regions Configuration (if fully or partially predefined) --&gt;
+ &lt;xs:element name="sauRegionsConfig" minOccurs="0"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="region" minOccurs="0" maxOccurs="unbounded"&gt;
+ &lt;!-- addressBlockType specifies the elements to describe an address block --&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence minOccurs="1" maxOccurs="unbounded"&gt;
+ &lt;xs:element name="base" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="limit" type="scaledNonNegativeInteger"/&gt;
+ &lt;xs:element name="access" type="sauAccessType"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/&gt;
+ &lt;xs:attribute name="name" type="xs:string" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/&gt;
+ &lt;xs:attribute name="protectionWhenDisabled" type="protectionStringType" use="optional" default="s"/&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;xs:complexType name="enumeratedValuesType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- name specfies a reference to this enumeratedValues section for reuse purposes
+ this name does not appear in the System Viewer nor the Header File. --&gt;
+ &lt;xs:element name="name" type="enumerationNameType" minOccurs="0"/&gt;
+ &lt;!-- usage specifies whether this enumeration is to be used for read or write or
+ (read and write) accesses --&gt;
+ &lt;xs:element name="usage" type="enumUsageType" minOccurs="0"/&gt;
+ &lt;!-- enumeratedValue derivedFrom=&lt;identifierType&gt; --&gt;
+ &lt;xs:element name="enumeratedValue" minOccurs="1" maxOccurs="unbounded"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- name is a ANSI C indentifier representing the value (C Enumeration) --&gt;
+ &lt;xs:element name="name" type="enumerationNameType"/&gt;
+ &lt;!-- description contains the details about the semantics/behavior specified by this value --&gt;
+ &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
+ &lt;xs:choice&gt;
+ &lt;xs:element name="value" type="enumeratedValueDataType"/&gt;
+ &lt;!-- isDefault specifies the name and description for all values that are not
+ specifically described individually --&gt;
+ &lt;xs:element name="isDefault" type="xs:boolean"/&gt;
+ &lt;/xs:choice&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="derivedFrom" type="enumerationNameType" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;xs:complexType name="fieldType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- name specifies a field's name. The System Viewer and the device header file will
+ use the name of the field as identifier --&gt;
+ &lt;xs:element name="name" type="identifierType"/&gt;
+ &lt;!-- description contains reference manual level information about the function and
+ options of a field --&gt;
+ &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- alternative specifications of the bit position of the field within the register --&gt;
+ &lt;xs:choice minOccurs="1" maxOccurs="1"&gt;
+ &lt;!-- bit field described by lsb followed by msb tag --&gt;
+ &lt;xs:group ref="bitRangeLsbMsbStyle"/&gt;
+ &lt;!-- bit field described by bit offset relative to Bit0 + bit width of field --&gt;
+ &lt;xs:group ref="bitRangeOffsetWidthStyle"/&gt;
+ &lt;!-- bit field described by [&lt;msb&gt;:&lt;lsb&gt;] --&gt;
+ &lt;xs:element name="bitRange" type="bitRangeType"/&gt;
+ &lt;/xs:choice&gt;
+ &lt;!-- access describes the predefined permissions for the field. --&gt;
+ &lt;xs:element name="access" type="accessType" minOccurs="0"/&gt;
+ &lt;!-- predefined description of write side effects --&gt;
+ &lt;xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/&gt;
+ &lt;!-- writeContstraint specifies the subrange of allowed values --&gt;
+ &lt;xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/&gt;
+ &lt;!-- readAction specifies the read side effects. --&gt;
+ &lt;xs:element name="readAction" type="readActionType" minOccurs="0"/&gt;
+ &lt;!-- enumeratedValues derivedFrom=&lt;identifierType&gt; --&gt;
+ &lt;xs:element name="enumeratedValues" type="enumeratedValuesType" minOccurs="0" maxOccurs="2"&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="derivedFrom" type="identifierType" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;xs:complexType name="fieldsType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- field derivedFrom=&lt;identifierType&gt; --&gt;
+ &lt;xs:element name="field" type="fieldType" minOccurs="1" maxOccurs="unbounded"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;xs:complexType name="registerType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:group ref="dimElementGroup" minOccurs="0"/&gt;
+ &lt;!-- name specifies the name of the register. The register name is used by System Viewer and
+ device header file generator to represent a register --&gt;
+ &lt;xs:element name="name" type="identifierType"/&gt;
+ &lt;!-- display name specifies a register name without the restritions of an ANSIS C identifier.
+ The use of this tag is discouraged because it does not allow consistency between
+ the System View and the device header file. --&gt;
+ &lt;xs:element name="displayName" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- description contains a reference manual level description about the register and it's purpose --&gt;
+ &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
+ &lt;xs:choice&gt;
+ &lt;!-- alternateGroup specifies the identifier of the subgroup a register belongs to.
+ This is useful if a register has a different description per mode but a single name --&gt;
+ &lt;xs:element name="alternateGroup" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: alternateRegister specifies an alternate register description for an address that is
+ already fully described. In this case the register name must be unique within the peripheral --&gt;
+ &lt;xs:element name="alternateRegister" type="identifierType" minOccurs="0"/&gt;
+ &lt;/xs:choice&gt;
+ &lt;!-- addressOffset describes the address of the register relative to the baseOffset of the peripheral --&gt;
+ &lt;xs:element name="addressOffset" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all fields contained in this register --&gt;
+ &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
+ &lt;!-- V1.1: dataType specifies a CMSIS compliant native dataType for a register (i.e. signed, unsigned, pointer) --&gt;
+ &lt;xs:element name="dataType" type="dataTypeType" minOccurs="0"/&gt;
+ &lt;!-- modifiedWriteValues specifies the write side effects --&gt;
+ &lt;xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/&gt;
+ &lt;!-- writeConstraint specifies the subset of allowed write values --&gt;
+ &lt;xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/&gt;
+ &lt;!-- readAcction specifies the read side effects --&gt;
+ &lt;xs:element name="readAction" type="readActionType" minOccurs="0"/&gt;
+ &lt;!-- fields section contains all fields that belong to this register --&gt;
+ &lt;xs:element name="fields" type="fieldsType" minOccurs="0" maxOccurs="1"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="derivedFrom" type="identifierType" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;!-- V1.1: A cluster is a set of registers that are composed into a C data structure in the device header file --&gt;
+ &lt;xs:complexType name="clusterType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:group ref="dimElementGroup" minOccurs="0"/&gt;
+ &lt;xs:element name="name" type="identifierType"/&gt;
+ &lt;xs:element name="description" type="xs:string"/&gt;
+ &lt;!-- V1.1: alternateCluster specifies an alternative description for a cluster address range that is
+ already fully described. In this case the cluster name must be unique within the peripheral --&gt;
+ &lt;xs:element name="alternateCluster" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: headerStructName specifies the name for the cluster structure typedef
+ used in the device header generation instead of the cluster name --&gt;
+ &lt;xs:element name="headerStructName" type="identifierType" minOccurs="0"/&gt;
+ &lt;xs:element name="addressOffset" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all registers contained in this peripheral --&gt;
+ &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:choice minOccurs="1" maxOccurs="unbounded"&gt;
+ &lt;xs:element name="register" type="registerType" minOccurs="0" maxOccurs="unbounded"/&gt;
+ &lt;!-- 1.3: nesting of cluster is supported --&gt;
+ &lt;xs:element name="cluster" type="clusterType" minOccurs="0" maxOccurs="unbounded"/&gt;
+ &lt;/xs:choice&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="derivedFrom" type="identifierType" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;!-- the registers section can have an arbitrary list of cluster and register sections --&gt;
+ &lt;xs:complexType name="registersType"&gt;
+ &lt;xs:choice minOccurs="1" maxOccurs="unbounded"&gt;
+ &lt;xs:element name="cluster" type="clusterType"/&gt;
+ &lt;xs:element name="register" type="registerType"/&gt;
+ &lt;/xs:choice&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;xs:complexType name="peripheralType"&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- 1.3: specify uni-dimensional array of peripheral - requires name="&lt;name&gt;[%s]" --&gt;
+ &lt;xs:group ref="dimElementGroup" minOccurs="0"/&gt;
+ &lt;!-- name specifies the name of a peripheral. This name is used for the System View and device header file --&gt;
+ &lt;xs:element name="name" type="identifierType"/&gt;
+ &lt;!-- version specifies the version of the peripheral descriptions --&gt;
+ &lt;xs:element name="version" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- description provides a high level functional description of the peripheral --&gt;
+ &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: alternatePeripheral specifies an alternative description for an address range that is
+ already fully by a peripheral described. In this case the peripheral name must be unique within the device description --&gt;
+ &lt;xs:element name="alternatePeripheral" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- groupName assigns this peripheral to a group of peripherals. This is only used bye the System View --&gt;
+ &lt;xs:element name="groupName" type="xs:Name" minOccurs="0"/&gt;
+ &lt;!-- prependToName specifies a prefix that is placed in front of each register name of this peripheral.
+ The device header file will show the registers in a C-Struct of the peripheral without the prefix. --&gt;
+ &lt;xs:element name="prependToName" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- appendToName is a postfix that is appended to each register name of this peripheral. The device header
+ file will sho the registers in a C-Struct of the peripheral without the postfix --&gt;
+ &lt;xs:element name="appendToName" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: headerStructName specifies the name for the peripheral structure typedef
+ used in the device header generation instead of the peripheral name --&gt;
+ &lt;xs:element name="headerStructName" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- disableCondition contains a logical expression based on constants and register or bit-field values
+ if the condition is evaluated to true, the peripheral display will be disabled --&gt;
+ &lt;xs:element name="disableCondition" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- baseAddress specifies the absolute base address of a peripheral. For derived peripherals it is mandatory
+ to specify a baseAddress. --&gt;
+ &lt;xs:element name="baseAddress" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value. These default values are inherited to all registers contained in this peripheral --&gt;
+ &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
+ &lt;!-- addressBlock specifies one or more address ranges that are assigned exclusively to this peripheral.
+ derived peripherals may have no addressBlock, however none-derived peripherals are required to specify
+ at least one address block --&gt;
+ &lt;xs:element name="addressBlock" type="addressBlockType" minOccurs="0" maxOccurs="unbounded"/&gt;
+ &lt;!-- interrupt specifies can specify one or more interrtupts by name, description and value --&gt;
+ &lt;xs:element name="interrupt" type="interruptType" minOccurs="0" maxOccurs="unbounded"/&gt;
+ &lt;!-- registers section contains all registers owned by the peripheral. In case a peripheral gets derived it does
+ not have its own registers section, hence this section is optional. A unique peripheral without a
+ registers section is not allowed --&gt;
+ &lt;xs:element name="registers" type="registersType" minOccurs="0" maxOccurs="1"&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="derivedFrom" type="identifierType" use="optional"/&gt;
+ &lt;/xs:complexType&gt;
+
+ &lt;!-- ==================================================== --&gt;
+ &lt;!-- The top level element of a description is the device --&gt;
+ &lt;!-- ==================================================== --&gt;
+ &lt;xs:element name="device" nillable="true"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;!-- V1.1: Vendor Name --&gt;
+ &lt;xs:element name="vendor" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: Vendor ID - a short name for referring to the vendor (e.g. Texas Instruments = TI) --&gt;
+ &lt;xs:element name="vendorID" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- name specifies the device name being described --&gt;
+ &lt;xs:element name="name" type="identifierType"/&gt;
+ &lt;!-- V1.1: series specifies the device series or family name --&gt;
+ &lt;xs:element name="series" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- version specifies the version of the device description --&gt;
+ &lt;xs:element name="version" type="stringType"/&gt;
+ &lt;!-- description is a string describing the device features (e.g. memory size, peripherals, etc.) --&gt;
+ &lt;xs:element name="description" type="stringType"/&gt;
+ &lt;!-- V1.1: licenseText specifies the file header section to be included in any derived file --&gt;
+ &lt;xs:element name="licenseText" type="stringType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: cpu specifies the details of the processor included in the device --&gt;
+ &lt;xs:element name="cpu" type="cpuType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: the tag specifies the filename without extension of the CMSIS System Device include file.
+ This tag is used by the header file generator for customizing the include statement referencing the
+ CMSIS system file within the CMSIS device header file. By default the filename is "system_&lt;device.name&gt;"
+ In cases a device series shares a single system header file, the name of the series shall be used
+ instead of the individual device name. --&gt;
+ &lt;xs:element name="headerSystemFilename" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- V1.1: headerDefinitionPrefix specifies the string being prepended to all names of types defined in
+ generated device header file --&gt;
+ &lt;xs:element name="headerDefinitionsPrefix" type="identifierType" minOccurs="0"/&gt;
+ &lt;!-- addressUnitBits specifies the size of the minimal addressable unit in bits --&gt;
+ &lt;xs:element name="addressUnitBits" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- width specifies the number of bits for the maximum single transfer size allowed by the bus interface.
+ This sets the maximum size of a single register that can be defined for an address space --&gt;
+ &lt;xs:element name="width" type="scaledNonNegativeInteger"/&gt;
+ &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
+ reset value --&gt;
+ &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
+
+ &lt;!-- peripherals is containing all peripherals --&gt;
+ &lt;xs:element name="peripherals"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:element name="peripheral" type="peripheralType" minOccurs="1" maxOccurs="unbounded"/&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+
+ &lt;!-- Vendor Extensions: this section captures custom extensions. This section will be ignored by default --&gt;
+ &lt;xs:element name="vendorExtensions" minOccurs="0" maxOccurs="1"&gt;
+ &lt;xs:complexType&gt;
+ &lt;xs:sequence&gt;
+ &lt;xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"&gt;
+ &lt;/xs:any&gt;
+ &lt;/xs:sequence&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+ &lt;/xs:sequence&gt;
+ &lt;xs:attribute name="schemaVersion" type="xs:decimal" use="required"/&gt;
+ &lt;/xs:complexType&gt;
+ &lt;/xs:element&gt;
+&lt;/xs:schema&gt;
+
+&lt;!-- END OF FILE --&gt;
+</pre> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html
new file mode 100644
index 0000000..c24f8f9
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVD Extensions</title>
+<title>CMSIS-SVD: SVD Extensions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd___format__1__1__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#groups">Content</a> </div>
+ <div class="headertitle">
+<div class="title">SVD Extensions</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
+Content</h2></td></tr>
+<tr class="memitem:group__device_section_extensions__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__device_section_extensions__gr.html">Extensions to the Device Section</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__cpu_section__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpu_section__gr.html">CPU Section</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__peripheral_section_extensions__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__peripheral_section_extensions__gr.html">Extensions to the Peripheral Section</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__cluster_level__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cluster_level__gr.html">Cluster Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__register_section_extensions__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__register_section_extensions__gr.html">Extensions to the Register Section</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
+<p>From a schema perspective, CMSIS-SVD Version 1.1,1.2 and 1.3 are fully backward compatible to version 1.0.</p>
+<p>Many of the features added in version 1.1 are required for generating CMSIS-Core device header files from a CMSIS SVD description. It is expected that today all CMSIS-SVD descriptions will comply with version 1.1.</p>
+<p>In version 1.2 Cortex-M7 related extensions have been added to the cpu section exclusively used for device header file generation. These extensions are only mandatory for Cortex-M7 based devices.</p>
+<p>In version 1.3 introduces the ability to describe an arrays of a peripheral as well as nesting clusters. Furthermore the cpu section as well as the register properties have been extended to reflect security extensions optional in future devices. Only those accesses originating from a <em>secure</em> state, have the permission to access resources attributed as <em>secure</em>. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js
new file mode 100644
index 0000000..d25ff7a
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js
@@ -0,0 +1,8 @@
+var group__svd___format__1__1__gr =
+[
+ [ "Extensions to the Device Section", "group__device_section_extensions__gr.html", null ],
+ [ "CPU Section", "group__cpu_section__gr.html", null ],
+ [ "Extensions to the Peripheral Section", "group__peripheral_section_extensions__gr.html", null ],
+ [ "Cluster Level", "group__cluster_level__gr.html", null ],
+ [ "Extensions to the Register Section", "group__register_section_extensions__gr.html", null ]
+]; \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__gr.html b/CMSIS/Documentation/SVD/html/group__svd___format__gr.html
new file mode 100644
index 0000000..f12ebc0
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd___format__gr.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVD File Schema Levels</title>
+<title>CMSIS-SVD: SVD File Schema Levels</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd___format__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#groups">Content</a> </div>
+ <div class="headertitle">
+<div class="title">SVD File Schema Levels</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
+Content</h2></td></tr>
+<tr class="memitem:group__svd__xml__device__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__svd__xml__device__gr.html">Device Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__svd__xml__peripherals__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__svd__xml__peripherals__gr.html">Peripherals Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__svd__xml__registers__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__svd__xml__registers__gr.html">Registers Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__svd__xml__fields__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__svd__xml__fields__gr.html">Fields Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__svd__xml__enum__gr"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__svd__xml__enum__gr.html">Enumerated Values Level</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
+<p>This section specifies the <b>SVD file format</b> Version 1.0. Each subsection defines one level of hierarchy and lists all mandatory and optional language elements as well as their type. A brief example description snippet demonstrates the usage of the elements. </p>
+<dl class="section note"><dt>Note</dt><dd><ul>
+<li>The sequence of elements in CMSIS-SVD is mandatory.</li>
+<li><span class="opt">Optional elements</span> are highlighted in green.</li>
+<li><span class="mand">Mandatory elements</span> are highlighted in blue. Optional sections can contain mandatory elements, which must be specified when the optional section is used. In this case the mandatory elements are also highlighted in blue.</li>
+</ul>
+</dd></dl>
+<h1><a class="anchor" id="Names"></a>
+Names</h1>
+<p>All <b>name</b> tags must comply with the ANSI C identifier naming restrictions (identifierType). In particular they must not contain any spaces or special characters. This is necessary to support the generation of device header files thus providing consistency between the names being shown by the debugger and the symbols being used in the CMSIS compliant target software.</p>
+<h1><a class="anchor" id="Constants"></a>
+Constants</h1>
+<p>Number constants shall be entered in hexadecimal, decimal, or binary format. </p>
+<ul>
+<li>The Hexadecimal format is indicated by a leading <b>"0x"</b>. </li>
+<li>The Binary format is indicated by a leading <b>"#"</b>. </li>
+<li>All other formats are interpreted as decimal numbers. </li>
+<li>The value tag in <em>enumeratedValue</em> accepts <em>'do not care'</em> bits represented by <b>"x"</b>.</li>
+</ul>
+<h1><a class="anchor" id="Comments"></a>
+Comments</h1>
+<p>Comments have the standard XML format. </p>
+<ul>
+<li>Start a comment with <b>"&lt;!&ndash;"</b>. </li>
+<li>End a comment with <b>"&ndash;&gt;"</b>.</li>
+</ul>
+<h1><a class="anchor" id="_"></a>
+Empty Tags</h1>
+<ul>
+<li>Single tags are not supported (for example, &lt;name&gt;).</li>
+<li>The tag content must not consist of an empty string (instead, omit optional tags).</li>
+</ul>
+<dl class="section remark"><dt>Remarks</dt><dd>The latest <a class="el" href="group__schema__1__2__gr.html">CMSIS-SVD Schema File</a> is provided alongside this document. </dd></dl>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__gr.js b/CMSIS/Documentation/SVD/html/group__svd___format__gr.js
new file mode 100644
index 0000000..7ee0675
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd___format__gr.js
@@ -0,0 +1,8 @@
+var group__svd___format__gr =
+[
+ [ "Device Level", "group__svd__xml__device__gr.html", null ],
+ [ "Peripherals Level", "group__svd__xml__peripherals__gr.html", null ],
+ [ "Registers Level", "group__svd__xml__registers__gr.html", null ],
+ [ "Fields Level", "group__svd__xml__fields__gr.html", null ],
+ [ "Enumerated Values Level", "group__svd__xml__enum__gr.html", null ]
+]; \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html
new file mode 100644
index 0000000..f38b61c
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Device Level</title>
+<title>CMSIS-SVD: Device Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd__xml__device__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Device Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></div></div><!--header-->
+<div class="contents">
+<p>The element <b>device</b> provides the outermost frame of the description.</p>
+<ul>
+<li>Only one device section is allowed per file. All other elements like peripherals, registers, fields, enumerated values, and vendor extensions are described within this scope.</li>
+<li>A device contains one or more peripherals.</li>
+<li>Optional elements like size, access, resetValue, and resetMask defined on this level are used as default values throughout the device description, unless they get redefined at a lower level.</li>
+</ul>
+<hr/>
+<pre>
+<span class="mand"><b>&lt;device schemaVersion=<em>"xs:decimal"</em> xmlns:xs=<em>"http://www.w3.org/2001/XMLSchema-instance"</em> xs:noNamespaceSchemaLocation=<em>"CMSIS-SVD.xsd"</em>&gt;</b></span></pre><pre><span class="mand"> &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ &lt;version&gt;<em>xs:string</em>&lt;/version&gt;
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;
+ &lt;addressUnitBits&gt;<em>scaledNonNegativeInteger</em>&lt;/addressUnitBits&gt;
+ &lt;width&gt;<em>scaledNonNegativeInteger</em>&lt;/width&gt;
+<span class="opt">
+ <em>&lt;!-- registerPropertiesGroup --&gt;</em>
+ &lt;size&gt;<em>scaledNonNegativeInteger</em>&lt;/size&gt;
+ &lt;access&gt;<em>accessType</em>&lt;/access&gt;
+ &lt;resetValue&gt;<em>scaledNonNegativeInteger</em>&lt;/resetValue&gt;
+ &lt;resetMask&gt;<em>scaledNonNegativeInteger</em>&lt;/resetMask&gt;
+ <em>&lt;!-- end of registerPropertiesGroup --&gt;</em>
+</span>
+ &lt;peripherals&gt;
+ ...
+ &lt;/peripherals&gt;
+<span class="opt">
+ &lt;vendorExtensions&gt;
+ ...
+ &lt;/vendorExtensions&gt;</span></span></pre><pre><span class="mand"><b>&lt;/device&gt;</b>
+</span>
+</pre><table class="cmtable" summary="Device Level Schema">
+<tr>
+<th>Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>xmlns:xs </td><td>Specifies the underlying XML schema to which the CMSIS-SVD schema is compliant. Has to be set to: <span class="XML-Token">"http://www.w3.org/2001/XMLSchema-instance"</span>. </td><td>xs:decimal </td><td>1..1 </td></tr>
+<tr>
+<td>xmlns:xs </td><td>Specifies the file path and file name of the CMSIS-SVD Schema. For example, <span class="XML-Token">CMSIS-SVD.xsd</span>. </td><td>xs:string </td><td>1..1 </td></tr>
+<tr>
+<td>schemaVersion </td><td>Specifies the CMSIS-SVD schema version the description is compliant to (for example, 1.1). </td><td>xs:decimal </td><td>1..1 </td></tr>
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>The name string is used to identify the device or device series. Device names are required to be unique. </td><td>xs:string </td><td>1..1 </td></tr>
+<tr>
+<td>version </td><td>The string defines the version of the file. Silicon vendors maintain the description throughout the life-cycle of the device and ensure that all updated and released copies have a unique version string. Higher numbers indicate a more recent version. </td><td>xs:string </td><td>1..1 </td></tr>
+<tr>
+<td>description </td><td>String for describing main features of a device (for example CPU, clock frequency, peripheral overview). </td><td>xs:string </td><td>1..1 </td></tr>
+<tr>
+<td>addressUnitBits </td><td>Defines the number of data bits uniquely selected by each address. The value for Cortex-M based devices is 8 (byte-addressable). </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>width </td><td>Defines the number of data bit-width of the maximum single data transfer supported by the bus infrastructure. This information is relevant for debuggers when accessing registers, because it might be required to issue multiple accesses for accessing a resource of a bigger size. The expected value for Cortex-M based devices is 32. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td colspan="4">See <a class="el" href="group__register_properties_group__gr.html">registerPropertiesGroup</a> for details. </td></tr>
+<tr class="group1">
+<td align="right">size </td><td>Defines the default bit-width of any register contained in the device (implicit inheritance). </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">access </td><td>Defines the default access rights for all registers. </td><td>accessType </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">protection </td><td>Defines extended access protection for all registers. </td><td>protectionStringType </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">resetValue </td><td>Defines the default value for all registers at RESET. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">resetMask </td><td>Identifies which register bits have a defined reset value. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>peripherals </td><td>Next level of description. see <a class="el" href="group__svd__xml__peripherals__gr.html">Peripherals Level</a> for details. </td><td>&#160; </td><td>1..1 </td></tr>
+<tr>
+<td>vendorExtensions </td><td>The content and format of this section of the description is unspecified. Silicon vendors may choose to provide additional information. By default, this section is ignored for constructing the CMSIS files. It is up to the silicon vendor to specify a schema for this section. </td><td>xs:anyType (restriction) </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="dev_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">&lt;device schemaVersion=<span class="stringliteral">&quot;1.0&quot;</span> xmlns:xs=<span class="stringliteral">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span> xs:noNamespaceSchemaLocation=<span class="stringliteral">&quot;CMSIS-SVD.xsd&quot;</span>&gt;</div>
+<div class="line"> &lt;name&gt;ARM_Cortex_M3&lt;/name&gt;</div>
+<div class="line"> &lt;version&gt;0.1&lt;/version&gt;</div>
+<div class="line"> &lt;description&gt;ARM Cortex-M3 based Microcontroller demonstration device&lt;/description&gt;</div>
+<div class="line"> &lt;addressUnitBits&gt;8&lt;/addressUnitBits&gt;</div>
+<div class="line"> &lt;width&gt;32&lt;/width&gt;</div>
+<div class="line"> &lt;size&gt;32&lt;/size&gt;</div>
+<div class="line"> &lt;access&gt;read-write&lt;/access&gt;</div>
+<div class="line"> &lt;resetValue&gt;0&lt;/resetValue&gt;</div>
+<div class="line"> &lt;resetMask&gt;0xffffffff&lt;/resetMask&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;peripherals&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/peripherals&gt;</div>
+<div class="line">&lt;/device&gt;</div>
+</div><!-- fragment --><p>The device description above is at version 0.1 and uniquely identifies the device by the name "ARM_Cortex_M3". The peripherals are memory mapped in a byte-addressable address space with a bus width of 32 bits. The default size of the registers contained in the peripherals is set to 32 bits. Unless redefined for specific peripherals, all registers or fields are read-write accessible. A reset value of 0, valid for all 32 bits as specified by the reset mask, is set for all registers unless redefined at a lower level. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html
new file mode 100644
index 0000000..f35dd2b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html
@@ -0,0 +1,194 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Enumerated Values Level</title>
+<title>CMSIS-SVD: Enumerated Values Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd__xml__enum__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Enumerated Values Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></div></div><!--header-->
+<div class="contents">
+<div class="title">Enumerated Values</div><p> The concept of enumerated values creates a map between unsigned integers and an identifier string. In addition, a description string can be associated with each entry in the map.</p>
+<pre>
+ 0 &lt;-&gt; disabled -&gt; "the clock source clk0 is turned off"
+ 1 &lt;-&gt; enabled -&gt; "the clock source clk1 is running"
+ </pre><p> This information is used for generating an <em>enum</em> in the device header file. The debugger may use this information to display the identifier string as well as the description. Just like symbolic constants making source code more readable, the system view in the debugger becomes more instructive. The detailed description can provide reference manual level details within the debugger.</p>
+<hr/>
+<pre>
+<span class="mand">
+<b>&lt;enumeratedValues <span class="opt">derivedFrom</span>=<em>"xs:Name"</em>&gt;</b>
+<span class="opt">
+ &lt;name&gt;<em>enumerationNameType</em>&lt;/name&gt;
+ &lt;usage&gt;<em>usageType</em>&lt;/usage&gt;
+</span>
+ &lt;enumeratedValue&gt;
+ ...
+ &lt;/enumeratedValue&gt;
+<span class="opt">
+ ...
+ &lt;enumeratedValue&gt;
+ ...
+ &lt;/enumeratedValue&gt;
+</span>
+<b>&lt;/enumeratedValues&gt;</b>
+</span>
+</pre><table class="cmtable" summary="Enumerated Values Level Schema">
+<tr>
+<th>Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>derivedFrom </td><td>Makes a copy from a previously defined <em>enumeratedValues</em> section. No modifications are allowed. An <em>enumeratedValues</em> entry is referenced by its name. If the name is not unique throughout the description, it needs to be further qualified by specifying the associated field, register, and peripheral as required. For example: <pre>
+ field: clk.dis_en_enum
+ register + field: ctrl.clk.dis_en_enum
+ peripheral + register + field: timer0.ctrl.clk.dis_en_enum
+</pre> </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>Identifier for the whole enumeration section. </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<td>usage </td><td>Possible values are <span class="XML-Token">read<em>,</em> write<em>, or</em> read-write</span>. This allows specifying two different enumerated values depending whether it is to be used for a read or a write access. If not specified, the default value <span class="XML-Token">read-write</span> is used. </td><td>enumUsageType </td><td>0..1 </td></tr>
+<tr>
+<td>enumeratedValue </td><td>Describes a single entry in the enumeration. The number of required items depends on the bit width of the associated field. See section below for details. </td><td nowrap="nowrap">&#160; </td><td>1..* </td></tr>
+</table>
+<div class="title">Enumerated Value</div> <p>An <em>enumeratedValue</em> defines a map between an unsigned integer and a human readable string.</p>
+<hr/>
+ <pre>
+<span class="mand">
+<b>&lt;enumeratedValue&gt;</b></span></pre><pre><span class="mand"> &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ <span class="opt">&lt;description&gt;<em>xs:string</em>&lt;/description&gt;</span></span></pre><pre><span class="mand"> &lt;choice&gt;
+ &lt;value&gt;<em>scaledNonNegativeInteger</em>&lt;/value&gt;
+ &lt;isDefault&gt;<em>xs:boolean</em>&lt;/isDefault&gt;
+ &lt;/choice&gt;</span></pre><pre><span class="mand"><b>&lt;/enumeratedValue&gt;</b>
+</span>
+</pre><table class="cmtable" summary="Enumerated Value">
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>String describing the semantics of the value. Can be displayed instead of the value. </td><td>identifierType </td><td>0..1 </td></tr>
+<tr>
+<td>description </td><td>Extended string describing the value. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr class="choice">
+<td colspan="3"><em>choice of</em> </td><td>1..1 </td></tr>
+<tr class="choice">
+<td align="right">value </td><td>Defines the constant of the bit-field that the name corresponds to. </td><td nowrap="nowrap">scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="choice">
+<td align="right">isDefault </td><td>Defines the name and description for all other values that are not listed explicitly. </td><td>xs:boolean </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="enum_ex2"></a>
+Example:</h1>
+<div class="fragment"><div class="line">&lt;enumeratedValues&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;name&gt;TimerIntSelect&lt;/name&gt;</div>
+<div class="line"> &lt;usage&gt;read-write&lt;/usage&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;enumeratedValue&gt;</div>
+<div class="line"> &lt;name&gt;disabled&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;The clock source clk0 is turned off.&lt;/description&gt;</div>
+<div class="line"> &lt;value&gt;0&lt;/value&gt;</div>
+<div class="line"> &lt;/enumeratedValue&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;enumeratedValue&gt;</div>
+<div class="line"> &lt;name&gt;reserved&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Reserved values. Do not use.&lt;/description&gt;</div>
+<div class="line"> &lt;isDefault&gt;<span class="keyword">true</span>&lt;/isDefault&gt;</div>
+<div class="line"> &lt;/enumeratedValue&gt;</div>
+<div class="line"></div>
+<div class="line">&lt;/enumeratedValues&gt;</div>
+</div><!-- fragment --> <div class="fragment"><div class="line">&lt;enumeratedValues&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;name&gt;TimerIntSelect&lt;/name&gt;</div>
+<div class="line"> &lt;usage&gt;read-write&lt;/usage&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;enumeratedValue&gt;</div>
+<div class="line"> &lt;name&gt;disabled&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Timer does not generate interrupts.&lt;/description&gt;</div>
+<div class="line"> &lt;value&gt;0&lt;/value&gt;</div>
+<div class="line"> &lt;/enumeratedValue&gt;</div>
+<div class="line"></div>
+<div class="line"> &lt;enumeratedValue&gt;</div>
+<div class="line"> &lt;name&gt;enabled&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Timer generates interrupts.&lt;/description&gt;</div>
+<div class="line"> &lt;isDefault&gt;<span class="keyword">true</span>&lt;/isDefault&gt;</div>
+<div class="line"> &lt;/enumeratedValue&gt;</div>
+<div class="line"></div>
+<div class="line">&lt;/enumeratedValues&gt;</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html
new file mode 100644
index 0000000..05d033a
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html
@@ -0,0 +1,211 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Fields Level</title>
+<title>CMSIS-SVD: Fields Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd__xml__fields__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Fields Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></div></div><!--header-->
+<div class="contents">
+<p>All fields of a register are enclosed between the &lt;fields&gt; opening and closing tags</p>
+<p>A bit-field has a name that is unique within the register. The position and size within the register is either described by the combination of the least significant bit's position (lsb) and the most significant bit's position (msb), or the lsb and the bit-width of the field. A field may define an <em>enumeratedValue</em> in order to make the display more intuitive to read. <hr/>
+ <pre><span class="mand">
+<b>&lt;fields&gt;</b></span></pre><pre><span class="mand"><b> &lt;field <span class="opt">derivedFrom=<em>"identifierType"</em></span>&gt;</b></span></pre><pre><span class="mand"> &lt;name&gt;<em>xs:Name</em>&lt;/name&gt;
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;</span></pre><pre><span class="mand"> &lt;choice&gt;
+ <em> &lt;!-- bitRangeLsbMsbStyle --&gt; </em>
+ &lt;bitOffset&gt;<em>scaledNonNegativeInteger</em>&lt;bitOffset&gt;
+ &lt;bitWidth&gt;<em>scaledNonNegativeInteger</em>&lt;/bitWidth&gt;
+ <em>or</em>
+ <em> &lt;!-- bitRangeOffsetWidthStyle --&gt; </em>
+ &lt;lsb&gt;<em>scaledNonNegativeInteger</em>&lt;/lsb&gt;
+ &lt;msb&gt;<em>scaledNonNegativeInteger</em>&lt;/msb&gt;
+ <em>or</em>
+ <em> &lt;!-- bitRangePattern --&gt; </em>
+ &lt;bitRange&gt;<em>pattern</em>&lt;/bitRange&gt;
+ &lt;/choice&gt;
+ <span class="opt">
+ &lt;access&gt;<em>accessType</em>&lt;/access&gt;
+ &lt;modifiedWriteValues&gt;<em>writeValueType</em>&lt;/modifiedWriteValues&gt;
+ &lt;writeConstraint&gt;<em>writeConstraintType</em>&lt;/writeConstraint&gt;
+ &lt;readAction&gt;<em>readActionType</em>&lt;/readAction&gt;</span></span></pre><pre><span class="mand"><span class="opt"> &lt;enumeratedValues&gt;
+ ...
+ &lt;/enumeratedValues&gt;</span></span></pre><pre><span class="mand"> <b>&lt;/field&gt;
+ <span class="opt">...
+ &lt;field&gt;
+ ...
+ &lt;/field&gt;
+ </span>
+&lt;fields&gt;
+</b></span>
+</pre><table class="cmtable" summary="Field Level Schema">
+<tr>
+<th>Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>derivedFrom </td><td>The field is cloned from a previously defined field with a unique name. </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>Name string used to identify the field. Field names must be unique within a register. </td><td>xs:string </td><td>1..1 </td></tr>
+<tr>
+<td>description </td><td>String describing the details of the register. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>Choice of</em> </td><td colspan="2">Three options exist to describe the field's bit-range. The options are to be used mutually exclusive: </td><td>1..1 </td></tr>
+<tr class="choice">
+<td colspan="4"><em>1. bitRangeLsbMsbStyle</em> </td></tr>
+<tr class="choice">
+<td align="right">bitOffset </td><td>Value defining the position of the least significant bit of the field within the register it belongs to. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="choice">
+<td align="right">bitWidth </td><td>Value defining the bit-width of the bitfield within the register it belongs to. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="choice">
+<td colspan="4"><em>2. bitRangeOffsetWidthStyle</em> </td></tr>
+<tr class="choice">
+<td align="right">lsb </td><td>Value defining the bit position of the least significant bit within the register it belongs to. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="choice">
+<td align="right">msb </td><td>Value defining the bit position of the most significant bit within the register it belongs to. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="choice">
+<td colspan="4"><em>3. bitRangePattern</em> </td></tr>
+<tr class="choice">
+<td align="right">bitRange </td><td>A string in the format: "[&lt;msb&gt;:&lt;lsb&gt;]" </td><td>bitRangeType </td><td>0..1 </td></tr>
+<tr>
+<td>access </td><td>Predefined strings can be used to define the allowed access types for this field: <span class="XML-Token">read-only<em>,</em> write-only<em>,</em> read-write<em>, </em> writeOnce<em>, and</em> read-writeOnce</span>. Can be omitted if it matches the access permission set for the parent register. </td><td>accessType </td><td>0..1 </td></tr>
+<tr>
+<td>modifiedWriteValues </td><td>Describe the manipulation of data written to a field. If not specified, the value written to the field is the value stored in the field. The other options are bitwise operations: <ul>
+<li><span class="XML-Token">oneToClear</span>: write data bit of one shall clear (set to zero) the corresponding bit in the field. </li>
+<li><span class="XML-Token">oneToSet</span>: write data bit of one shall set (set to one) the corresponding bit in the field. </li>
+<li><span class="XML-Token">oneToToggle</span>: write data bit of one shall toggle (invert) the corresponding bit in the field. </li>
+<li><span class="XML-Token">zeroToClear</span>: write data bit of zero shall clear (set to zero) the corresponding bit in the field. </li>
+<li><span class="XML-Token">zeroToSet</span>: write data bit of zero shall set (set to one) the corresponding bit in the field. </li>
+<li><span class="XML-Token">zeroToToggle</span>: write data bit of zero shall toggle (invert) the corresponding bit in the field. </li>
+<li><span class="XML-Token">clear</span>: after a write operation all bits in the field are cleared (set to zero). </li>
+<li><span class="XML-Token">set</span>: after a write operation all bits in the field are set (set to one). </li>
+<li><span class="XML-Token">modify</span>: after a write operation all bit in the field may be modified (default). </li>
+</ul>
+</td><td>modifiedWriteValuesType </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>writeConstraint</em> </td><td colspan="2">Three options exist to set write-constraints: </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>1. writeAsRead</em> </td><td>If TRUE, only the last read value can be written. </td><td>xs:boolean </td><td>0..1 </td></tr>
+<tr class="choice">
+<td nowrap="nowrap"><em>2. useEnumeratedValues</em> </td><td>If TRUE, only the values listed in the <em>enumeratedValues</em> list are considered valid write values. </td><td>xs:boolean </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>3. range</em> </td><td>Consists of the following two elements: </td><td>&#160; </td><td>0..1 </td></tr>
+<tr class="choice">
+<td align="right">minimum </td><td>Specifies the smallest number to be written to the field. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="choice">
+<td align="right">maximum </td><td>Specifies the largest number to be written to the field. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>readAction </td><td>If set, it specifies the side effect following a read operation. If not set, the field is not modified after a read. The defined side effects are: <ul>
+<li><span class="XML-Token">clear</span>: The field is cleared (set to zero) following a read operation. </li>
+<li><span class="XML-Token">set</span>: The field is set (set to ones) following a read operation. </li>
+<li><span class="XML-Token">modify</span>: The field is modified in some way after a read operation. </li>
+<li><span class="XML-Token">modifyExternal</span>: One or more dependent resources other than the current field are immediately affected by a read operation (it is recommended that the field description specifies these dependencies).</li>
+</ul>
+Debuggers are not expected to read this field location unless explicitly instructed by the user. </td><td>readActionType </td><td>0..1 register </td></tr>
+<tr>
+<td>enumeratedValues </td><td>Next lower level of description. See section <a class="el" href="group__svd__xml__enum__gr.html">Enumerated Values Level</a> for details. </td><td>&#160; </td><td>0..2 </td></tr>
+</table>
+<h1><a class="anchor" id="field_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;field&gt;</div>
+<div class="line"> &lt;name&gt;TimerCtrl0_IntSel&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Select interrupt line that is triggered by timer overflow.&lt;/description&gt;</div>
+<div class="line"> &lt;bitOffset&gt;1&lt;/bitOffset&gt;</div>
+<div class="line"> &lt;bitWidth&gt;3&lt;/bitWidth&gt;</div>
+<div class="line"> &lt;access&gt;read-write&lt;/access&gt;</div>
+<div class="line"> &lt;resetValue&gt;0x0&lt;/resetValue&gt;</div>
+<div class="line"> &lt;modifiedWriteValues&gt;oneToSet&lt;/modifiedWriteValues&gt;</div>
+<div class="line"> &lt;writeConstraint&gt;</div>
+<div class="line"> &lt;range&gt;</div>
+<div class="line"> &lt;minimum&gt;0&lt;/minimum&gt;</div>
+<div class="line"> &lt;maximum&gt;5&lt;/maximum&gt;</div>
+<div class="line"> &lt;/range&gt;</div>
+<div class="line"> &lt;/writeConstraint&gt;</div>
+<div class="line"> &lt;readAction&gt;clear&lt;/readAction&gt;</div>
+<div class="line"> </div>
+<div class="line"> &lt;enumeratedValues&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/enumeratedValues&gt;</div>
+<div class="line">&lt;/field&gt;</div>
+<div class="line">...</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html
new file mode 100644
index 0000000..14407ea
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html
@@ -0,0 +1,225 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Peripherals Level</title>
+<title>CMSIS-SVD: Peripherals Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd__xml__peripherals__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Peripherals Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></div></div><!--header-->
+<div class="contents">
+<p>All peripherals of a device are enclosed within the tag <b>&lt;peripherals&gt;</b>. At least one peripheral has to be defined. Each peripheral is enclosed in the tag <b>&lt;peripheral&gt;</b>.</p>
+<ul>
+<li>Each peripheral describes all registers belonging to that peripheral.</li>
+<li>The address range allocated by a peripheral is defined through one or more address blocks.</li>
+<li>An address block and register addresses are specified relative to the base address of a peripheral. The address block information can be used for constructing a memory map for the device peripherals.</li>
+</ul>
+<p>Starting version 1.3 of the SVD specification arrays of peripherals can be specified. The single peripheral description gets duplicated automatically into an array. The number of array elements is specified by the &lt;dim&gt; element. The peripheral name needs to be of the format <em>myPeripheral[s]</em>. The <em>&lt;dimIncrement&gt;</em> specifies the address offset between two peripherals. The &lt;dimIndex&gt; is ignored. If you want to create copies of a peripheral using different names, please use the derivedFrom attribute.</p>
+<dl class="section remark"><dt>Remarks</dt><dd>The memory map does not contain any information about physical memory. The memories of a device are described as part of the CMSIS-PACK device description.</dd></dl>
+<hr/>
+<pre>
+<span class="mand"> <b>&lt;peripherals&gt;</b> </span></pre><pre><span class="mand"> <b>&lt;peripheral <span class="opt">derivedFrom=<em>identifierType</em></span>&gt;</b></span></pre><pre><span class="mand"> &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ &lt;version&gt;<em>xs:string</em>&lt;/version&gt;
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;
+ <span class="opt">
+ &lt;groupName&gt;<em>identifierType</em>&lt;/groupName&gt;
+ &lt;prependToName&gt;<em>identifierType</em>&lt;/prependToName&gt;
+ &lt;appendToName&gt;<em>identifierType</em>&lt;/appendToName&gt;
+ &lt;disableCondition&gt;<em>xs:string</em>&lt;/disableCondition&gt;
+ </span>
+ &lt;baseAddress&gt;<em>scaledNonNegativeInteger</em>&lt;/baseAddress&gt;
+ <span class="opt">
+ <em> &lt;!-- registerPropertiesGroup --&gt;</em>
+ &lt;size&gt;<em>scaledNonNegativeInteger</em>&lt;/size&gt;
+ &lt;access&gt;<em>accessType</em>&lt;/access&gt;
+ &lt;resetValue&gt;<em>scaledNonNegativeInteger</em>&lt;/resetValue&gt;
+ &lt;resetMask&gt;<em>scaledNonNegativeInteger</em>&lt;/resetMask&gt;
+ <em> &lt;!-- end of registerPropertiesGroup --&gt;</em>
+ </span>
+ &lt;addressBlock&gt;
+ &lt;offset&gt;<em>scaledNonNegativeInteger</em>&lt;/offset&gt;
+ &lt;size&gt;<em>scaledNonNegativeInteger</em>&lt;/size&gt;
+ &lt;usage&gt;<em>usageType</em>&lt;/usage&gt;
+ &lt;protection&gt;<em>protectionStringType</em>&lt;/protection&gt;
+ &lt;/addressBlock&gt;<span class="opt">
+ ...
+ &lt;addressBlock&gt;<span class="mand">
+ &lt;offset&gt;<em>scaledNonNegativeInteger</em>&lt;/offset&gt;
+ &lt;size&gt;<em>scaledNonNegativeInteger</em>&lt;/size&gt;
+ &lt;usage&gt;<em>usageType</em>&lt;/usage&gt;</span><span class="opt">
+ &lt;protection&gt;<em>protectionStringType</em>&lt;/protection&gt;
+ &lt;/addressBlock&gt;</span>
+ <span class="opt">
+ &lt;interrupt&gt;</span><span class="mand">
+ &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ &lt;value&gt;<em>scaledNonNegativeInteger</em>&lt;/value&gt;</span>
+ &lt;/interrupt&gt;</span></span></pre><pre><span class="mand"><span class="opt"> &lt;registers&gt;
+ ...
+ &lt;/registers&gt;</span></span></pre><pre><span class="mand"> <b>&lt;/peripheral&gt;</b>
+ <span class="opt">...
+ &lt;peripheral&gt;
+ ...
+ &lt;/peripheral&gt;
+ </span>
+<b>&lt;/peripherals&gt;</b>
+</span>
+</pre><table class="cmtable" summary="Peripheral Level Schema">
+<tr>
+<th nowrap="nowrap">Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>derivedFrom </td><td>Specifies the name of a peripheral from which this peripheral will be derived. Values are inherit. Elements specified underneath will override inherited values. </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<th nowrap="nowrap">Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>name </td><td>The name string is used to identify the peripheral. Peripheral names are required to be unique for a device. The name needs to be an ANSI C identifier to allow header file generation. </td><td>xs:Name </td><td>1..1 </td></tr>
+<tr>
+<td>version </td><td>The string specifies the version of this peripheral description. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>description </td><td>The string provides an overview of the purpose and functionality of the peripheral. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>groupName </td><td></td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>prependToName </td><td>All register names of this peripheral have their names prefixed with this string. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>appendToName </td><td>All register names of this peripheral have their names suffixed with this string. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>disableCondition </td><td>Is a C-language compliant logical expression returning a TRUE or FALSE result. If TRUE, refreshing the display for this peripheral is disabled and related accesses by the debugger are suppressed. <br/>
+ <br/>
+ Only constants and references to other registers contained in the description are allowed: <em>&lt;peripheral&gt;-&gt;&lt;register&gt;-&gt;&lt;field&gt;</em>, for example, (System-&gt;ClockControl-&gt;apbEnable == 0). The following operators are allowed in the expression [&amp;&amp;,||, ==, !=, &gt;&gt;, &lt;&lt;, &amp;, |]. <dl class="section attention"><dt>Attention</dt><dd>Use this feature only in cases where accesses from the debugger to registers of un-clocked peripherals result in severe debugging failures. SVD is intended to provide static information and does not include any run-time computation or functions. Such capabilities can be added by the tools, and is beyond the scope of this description language. </dd></dl>
+</td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>baseAddress </td><td>Lowest address reserved or used by the peripheral. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td colspan="4">See <a class="el" href="group__register_properties_group__gr.html">registerPropertiesGroup</a> for details. </td></tr>
+<tr class="group1">
+<td align="right">size </td><td>Defines the default bit-width of any register contained in the device (implicit inheritance). </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">access </td><td>Defines the default access rights for all registers. </td><td>accessType </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">protection </td><td>Defines the protection rights for all registers. </td><td>protectionStringType </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">resetValue </td><td>Defines the default value for all registers at RESET. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">resetMask </td><td>Identifies which register bits have a defined reset value. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group2">
+<td>addressBlock </td><td>Specifies an address range uniquely mapped to this peripheral. A peripheral must have at least one address block, but may allocate multiple distinct address ranges. If a peripheral is derived form another peripheral, the addressBlock is not mandatory. </td><td>addressBlockType </td><td>1..* </td></tr>
+<tr class="group2">
+<td align="right">offset </td><td>Specifies the start address of an address block relative to the peripheral <em>baseAddress</em>. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group2">
+<td align="right">size </td><td>Specifies the number of addressUnitBits being covered by this address block. The end address of an address block results from the sum of baseAddress, offset, and (size - 1). </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group2">
+<td align="right">usage </td><td>The following predefined values can be used: <span class="XML-Token">registers<em>, </em> buffer<em>, or</em> reserved</span>. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td>interrupt </td><td>A peripheral can have multiple associated interrupts. This entry allows the debugger to show interrupt names instead of interrupt numbers. </td><td>interruptType </td><td>0..* </td></tr>
+<tr class="group1">
+<td align="right">name </td><td>The string represents the interrupt name. </td><td>XS:string </td><td>1..1 </td></tr>
+<tr class="group1">
+<td align="right">value </td><td>Is the enumeration index value associated to the interrupt. </td><td>xs:integer </td><td>1..1 </td></tr>
+<tr>
+<td>registers </td><td>See <a class="el" href="group__svd__xml__registers__gr.html">Registers Level</a> for details. </td><td>&#160; </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="periph_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;peripheral&gt;</div>
+<div class="line"> &lt;name&gt;Timer0&lt;/name&gt;</div>
+<div class="line"> &lt;version&gt;1.0.32&lt;/version&gt;</div>
+<div class="line"> &lt;description&gt;Timer 0 is a simple 16 bit timer counting down ... &lt;/description&gt;</div>
+<div class="line"> &lt;baseAddress&gt;0x40000000&lt;/baseAddress&gt;</div>
+<div class="line"> &lt;addressBlock&gt;</div>
+<div class="line"> &lt;offset&gt;0x0&lt;/offset&gt;</div>
+<div class="line"> &lt;size&gt;0x400&lt;/size&gt;</div>
+<div class="line"> &lt;usage&gt;registers&lt;/usage&gt;</div>
+<div class="line"> &lt;protection&gt;s&lt;/protection&gt;</div>
+<div class="line"> &lt;/addressBlock&gt;</div>
+<div class="line"> &lt;interrupt&gt;&lt;name&gt;TIM0_INT&lt;/name&gt;&lt;value&gt;34&lt;/value&gt;&lt;/interrupt&gt;</div>
+<div class="line"> &lt;registers&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/registers&gt;</div>
+<div class="line">&lt;/peripheral&gt;</div>
+<div class="line"></div>
+<div class="line">&lt;peripheral derivedFrom=<span class="stringliteral">&quot;Timer0&quot;</span>&gt;</div>
+<div class="line"> &lt;name&gt;Timer1&lt;/name&gt;</div>
+<div class="line"> &lt;baseAddress&gt;0x40000400&lt;/baseAddress&gt;</div>
+<div class="line">&lt;/peripheral&gt;</div>
+<div class="line">...</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html
new file mode 100644
index 0000000..2db59f5
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html
@@ -0,0 +1,234 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Registers Level</title>
+<title>CMSIS-SVD: Registers Level</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('group__svd__xml__registers__gr.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Registers Level</div> </div>
+<div class="ingroups"><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></div></div><!--header-->
+<div class="contents">
+<p>All registers of a peripheral are enclosed between the <b>&lt;registers&gt;</b> opening and closing tags.</p>
+<p>The description of registers is the most essential part of the SVD description. The register's name, detailed description, and the address-offset relative to the peripheral base address are the mandatory elements. If the size, access, reset value, and reset mask have not been specified on the device or peripheral level, or if the default values need to be redefined locally, these fields become mandatory.</p>
+<p>A register can represent a single value or can be subdivided into individual bit-fields of specific functionality and semantics. In schema-terms the <em>fields</em> section is optional, however, from a specification perspective, fields are mandatory when they are described in the device documentation.</p>
+<p>The SVD specification supports the array-of-registers concept. The single register description gets duplicated automatically into an array. The size of the array is specified by the &lt;dim&gt; element. The register names can be composed by the register name and an index specific substring define in &lt;dimIndex&gt;. The &lt;dimIncrement&gt; specifies the address offset between two registers.</p>
+<hr/>
+<pre>
+<span class="mand"><b>&lt;registers&gt;</b> </span></pre><pre><span class="mand"> <b>&lt;register <span class="opt">derivedFrom=<em>identifierType</em></span>&gt;</b>
+ <span class="opt">
+ <em>&lt;!-- dimElementGroup --&gt; </em>
+ &lt;dim&gt;<em>scaledNonNegativeInteger</em>&lt;/dim&gt;
+ &lt;dimIncrement&gt;<em>scaledNonNegativeInteger</em>&lt;/dimIncrement&gt;
+ &lt;dimIndex&gt;<em>xs:string</em>&lt;/dimIndex&gt;
+ <em>&lt;!-- end of dimElementGroup --&gt; </em>
+ </span>
+ &lt;name&gt;<em>identifierType</em>&lt;/name&gt;
+ <span class="opt">
+ &lt;displayName&gt;<em>xs:string</em>&lt;/displayName&gt;
+ </span>
+ &lt;description&gt;<em>xs:string</em>&lt;/description&gt;
+ <span class="opt">
+ &lt;alternateGroup&gt;<em>xs:Name</em>&lt;/alternateGroup&gt;
+ </span>
+ &lt;addressOffset&gt;<em>scaledNonNegativeInteger</em>&lt;/addressOffset&gt;
+ <span class="opt">
+ <em>&lt;!-- registerPropertiesGroup --&gt; </em>
+ &lt;size&gt;<em>scaledNonNegativeInteger</em>&lt;/size&gt;
+ &lt;access&gt;<em>accessType</em>&lt;/access&gt;
+ &lt;resetValue&gt;<em>scaledNonNegativeInteger</em>&lt;/resetValue&gt;
+ &lt;resetMask&gt;<em>scaledNonNegativeInteger</em>&lt;/resetMask&gt;
+ <em>&lt;!-- end of registerPropertiesGroup --&gt; </em>
+ </span><span class="opt">
+ &lt;modifiedWriteValues&gt;<em>writeValueType</em>&lt;/modifiedWriteValues&gt;
+ &lt;writeConstraint&gt;<em>writeConstraintType</em>&lt;/writeConstraint&gt;
+ &lt;readAction&gt;<em>readActionType</em>&lt;/readAction&gt;</span></span></pre><pre><span class="mand"><span class="opt"> &lt;fields&gt;
+ ...
+ &lt;/fields&gt;
+ </span>
+ <b>&lt;/register&gt;</b>
+ <span class="opt">...
+ &lt;register&gt;
+ ...
+ &lt;/register&gt;
+ </span>
+<b>&lt;registers&gt;</b> </span>
+</pre><table class="cmtable" summary="Register Level Schema">
+<tr>
+<th>Attribute Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr>
+<td>derivedFrom </td><td>Specifies the name of the register from which to inherit the data. Elements being specified underneath will override the inherited values. <br/>
+<b>Remarks:</b> When deriving a register, it is mandatory to specify at least the name, the description, and the addressOffset. </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<th>Element Name </th><th>Description </th><th>Type </th><th>Occurrence </th></tr>
+<tr class="group1">
+<td colspan="4">See <a class="el" href="group__dim_element_group__gr.html">dimElementGroup</a> for details. </td></tr>
+<tr class="group1">
+<td align="right">dim </td><td>The value defines the number of elements in an array of registers. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td align="right">dimIncrement </td><td>If <em>dim</em> is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring registers of the register array in the address map. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td align="right">dimIndex </td><td>Specifies the substrings that replaces the <em>%s</em> placeholder within the register name. By default, the index is a decimal value starting with 0 for the first register. </td><td>dimIndexType </td><td>0..1 </td></tr>
+<tr>
+<td>name </td><td>Name string used to identify the register. Register names are required to be unique within the scope of a peripheral. </td><td>registerNameType </td><td>1..1 </td></tr>
+<tr>
+<td>displayName </td><td>When specified, the string is being used by a graphical frontend to visualize the register. Otherwise the name element is displayed. The <em>displayName</em> may contain special characters and white spaces. The place holder <b>s</b> can be used and is replaced by the <em>dimIndex</em> substring. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>description </td><td>String describing the details of the register. </td><td>xs:string </td><td>0..1 </td></tr>
+<tr>
+<td>alternateGroup </td><td>Specifies a group name associated with all alternate register that have the same name. At the same time, it indicates that there is a register definition allocating the same absolute address in the address space. </td><td>xs:Name </td><td>0..1 </td></tr>
+<tr>
+<td>addressOffset </td><td>Value defining the address of the register relative to the <em>baseAddress</em> defined by the peripheral of the register. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="group1">
+<td colspan="4">See <a class="el" href="group__register_properties_group__gr.html">registerPropertiesGroup</a> for details. </td></tr>
+<tr class="group1">
+<td align="right">size </td><td>Defines the default bit-width of any register contained in the device (implicit inheritance). </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">access </td><td>Defines the default access rights for all registers. </td><td>accessType </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">protection </td><td>Defines the protection rights for all registers. </td><td>protectionStringType </td><td><p class="starttd">0..1 </p>
+<p class="endtd"></p>
+</td></tr>
+<tr class="group1">
+<td align="right">resetValue </td><td>Defines the default value for all registers at RESET. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr class="group1">
+<td align="right">resetMask </td><td>Identifies which register bits have a defined reset value. </td><td>scaledNonNegativeInteger </td><td>0..1 </td></tr>
+<tr>
+<td>modifiedWriteValues </td><td>Element to describe the manipulation of data written to a register. If not specified, the value written to the field is the value stored in the field. The other options define bitwise operations: <ul>
+<li><span class="XML-Token">oneToClear</span>: write data bits of one shall clear (set to zero) the corresponding bit in the register. </li>
+<li><span class="XML-Token">oneToSet</span>: write data bits of one shall set (set to one) the corresponding bit in the register. </li>
+<li><span class="XML-Token">oneToToggle</span>: write data bits of one shall toggle (invert) the corresponding bit in the register. </li>
+<li><span class="XML-Token">zeroToClear</span>: write data bits of zero shall clear (set to zero) the corresponding bit in the register. </li>
+<li><span class="XML-Token">zeroToSet</span>: write data bits of zero shall set (set to one) the corresponding bit in the register. </li>
+<li><span class="XML-Token">zeroToToggle</span>: write data bits of zero shall toggle (invert) the corresponding bit in the register. </li>
+<li><span class="XML-Token">clear</span>: after a write operation all bits in the field are cleared (set to zero). </li>
+<li><span class="XML-Token">set</span>: after a write operation all bits in the field are set (set to one). </li>
+<li><span class="XML-Token">modify</span>: after a write operation all bit in the field may be modified (default). </li>
+</ul>
+</td><td>modifiedWriteValuesType </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>writeConstraint</em> </td><td colspan="2">Three options exist to set write-constraints: </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>1. writeAsRead</em> </td><td>If TRUE, only the last read value can be written. </td><td>xs:boolean </td><td>0..1 </td></tr>
+<tr class="choice">
+<td nowrap="nowrap"><em>2. useEnumeratedValues</em> </td><td>If TRUE, only the values listed in the <em>enumeratedValues</em> list are considered valid write values. </td><td>xs:boolean </td><td>0..1 </td></tr>
+<tr class="choice">
+<td><em>3. range</em> </td><td>Consists of the following two elements: </td><td>&#160; </td><td>0..1 </td></tr>
+<tr class="choice">
+<td align="right">minimum </td><td>Specifies the smallest number to be written to the field. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr class="choice">
+<td align="right">maximum </td><td>Specifies the largest number to be written to the field. </td><td>scaledNonNegativeInteger </td><td>1..1 </td></tr>
+<tr>
+<td>readAction </td><td>If set, it specifies the side effect following a read operation. If not set, the register is not modified. The defined side effects are: <ul>
+<li><span class="XML-Token">clear</span>: The register is cleared (set to zero) following a read operation. </li>
+<li><span class="XML-Token">set</span>: The register is set (set to ones) following a read operation. </li>
+<li><span class="XML-Token">modify</span>: The register is modified in some way after a read operation. </li>
+<li><span class="XML-Token">modifyExternal</span>: One or more dependent resources other than the current register are immediately affected by a read operation (it is recommended that the register description specifies these dependencies).</li>
+</ul>
+Debuggers are not expected to read this register location unless explicitly instructed by the user. </td><td>readActionType </td><td><p class="starttd">0..1 </p>
+<p class="endtd"></p>
+</td></tr>
+<tr>
+<td>fields </td><td>Next lower level of description (see <a class="el" href="group__svd__xml__fields__gr.html">Fields Level</a> for details). Not all registers are further divided into fields, therefore, this level is optional. In case a register is subdivided into bit fields, it should be reflected in the description. The device header file can only contain bit access macros and bit-field structures if this information is contained in the description. </td><td>&#160; </td><td>0..1 </td></tr>
+</table>
+<h1><a class="anchor" id="reg_ex"></a>
+Example:</h1>
+<div class="fragment"><div class="line">...</div>
+<div class="line">&lt;<span class="keyword">register</span>&gt;</div>
+<div class="line"> &lt;name&gt;TimerCtrl0&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Timer Control Register&lt;/description&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0x0&lt;/addressOffset&gt;</div>
+<div class="line"> &lt;access&gt;read-write&lt;/access&gt;</div>
+<div class="line"> &lt;resetValue&gt;0x00008001&lt;/resetValue&gt;</div>
+<div class="line"> &lt;resetMask&gt;0x0000ffff&lt;/resetMask&gt;</div>
+<div class="line"> &lt;size&gt;32&lt;/size&gt;</div>
+<div class="line"> &lt;fields&gt;</div>
+<div class="line"> ...</div>
+<div class="line"> &lt;/fields&gt;</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line"></div>
+<div class="line">&lt;<span class="keyword">register</span> derivedFrom=<span class="stringliteral">&quot;TimerCtrl0&quot;</span>&gt;</div>
+<div class="line"> &lt;name&gt;TimerCtrl1&lt;/name&gt;</div>
+<div class="line"> &lt;description&gt;Derived Timer&lt;/description&gt;</div>
+<div class="line"> &lt;addressOffset&gt;0x4&lt;/addressOffset&gt;</div>
+<div class="line">&lt;/<span class="keyword">register</span>&gt;</div>
+<div class="line">...</div>
+</div><!-- fragment --> </div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/index.html b/CMSIS/Documentation/SVD/html/index.html
new file mode 100644
index 0000000..e922398
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/index.html
@@ -0,0 +1,161 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>System View Description</title>
+<title>CMSIS-SVD: System View Description</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('index.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">System View Description </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h2>Introduction</h2>
+<p>The CMSIS System View Description format(CMSIS-SVD) formalizes the description of the system contained in ARM Cortex-M processor-based microcontrollers, in particular, the memory mapped registers of peripherals. The detail contained in system view descriptions is comparable to the data in device reference manuals. The information ranges from high level functional descriptions of a peripheral all the way down to the definition and purpose of an individual bit field in a memory mapped register.</p>
+<p>CMSIS-SVD files are developed and maintained by silicon vendors. Silicon vendors manage their descriptions in a central, web-based Device Database. The CMSIS-SVD files are down-loadable via a public web interface once they have been released by the silicon vendor. Tool vendors use CMSIS-SVD files for providing device-specific debug views of peripherals in their debugger. Last but not least, CMSIS-compliant device header files are generated from CMSIS-SVD files.</p>
+<h2>CMSIS-SVD Benefits</h2>
+<ul>
+<li>For Software Developers:<ul>
+<li>Consistency between device header file and what is being displayed by the debugger.</li>
+<li>Detailed information about peripherals, registers, fields, and bit values from within the debugger, without the need to reference device documentation.</li>
+<li>Public access via a web interface to new and updated descriptions as they become available from silicon vendors.</li>
+<li>Improved software development efficiency.</li>
+</ul>
+</li>
+</ul>
+<ul>
+<li>For Silicon Vendors:<ul>
+<li>A tool vendor independent file format enables early device support by a wide range of toolchains with limited effort.</li>
+<li>The XML-based format helps ease the integration into in-house design flows.</li>
+<li>Automated generation of CMSIS compliant device header files.</li>
+<li>Full control throughout the life cycle of the CMSIS-SVD files from creation to maintenance via the web-based Device Database.</li>
+</ul>
+</li>
+</ul>
+<ul>
+<li>For Tool Vendors:<ul>
+<li>Unified file format across silicon vendors helps the efficiency of supporting a wide range of new devices in a timely manner.</li>
+<li>Silicon vendors provide early review access to individuals ahead of the publishing date.</li>
+<li>Updated descriptions are available over the web simplifying the maintenance of device support.</li>
+</ul>
+</li>
+</ul>
+<h2>The Web Infrastructure</h2>
+<div class="image">
+<img src="CMSIS_SVD_WEB_DATABASE.png" alt="CMSIS_SVD_WEB_DATABASE.png"/>
+<div class="caption">
+CMSIS-SVD Management Processes</div></div>
+<p> The diagram illustrates the management process steps for uploading, validating, reviewing, publishing, and downloading CMSIS-SVD files.</p>
+<ul>
+<li><b>Managing Files:</b> A CMSIS-SVD file is uploaded by a silicon vendor via the web interface (<a href="https://cmsis.arm.com/user/index.php" target="_blank"><b>Device Database</b></a>). The system performs a check against the CMSIS-SVD Schema and runs the SVDConv consistency checker. Only if both checks were successful the file will be stored in the SVD Storage. Files can be added, replaced, and deleted.</li>
+</ul>
+<ul>
+<li><b>Managing Devices:</b> The silicon vendor creates an entry for each of his devices in the database by defining a name and associating it with a CMSIS-SVD file from the SVD Storage. The publishing date set forth for a device is used by the system to determine when this device becomes visible in the public device database. Prior to the publishing date, the silicon vendor can grant review access to individuals for an individual device. Reviewers get notified by e-mail about a device being made available for review.</li>
+</ul>
+<ul>
+<li><b>Public Download:</b> Public access to the silicon vendor specific CMSIS-SVD download pages is provided from <a href="http://cmsis.arm.com" target="_blank">cmsis.arm.com</a> or <a href="http://www.arm.com/cmsis" target="_blank">www.arm.com/cmsis</a>. Select the CMSIS-SVD tab and select the Silicon Vendor of interest from the list. For the public download of the CMSIS-SVD files of published devices it is mandatory to:<ul>
+<li>Be logged in on the ARM web site.</li>
+<li>Have accepted a silicon vendor specific End Users License Agreement (EULA).</li>
+</ul>
+</li>
+</ul>
+<p>More information about the web infrastructure can be found in the <a class="el" href="svd_web_pg.html">CMSIS-SVD Web Interface User Guide</a></p>
+<h2>Language Outline</h2>
+<ul>
+<li><a class="el" href="svd__outline_pg.html">SVD File Format</a></li>
+</ul>
+<h2>Language Specification</h2>
+<ul>
+<li><a class="el" href="group__svd___format__gr.html">SVD File Schema Levels</a></li>
+<li><a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a></li>
+</ul>
+<h2>CMSIS-SVD in ARM::CMSIS Pack</h2>
+<p>The following files relevant to CMSIS-SVD are present in the <b>ARM::CMSIS</b> Pack directories:</p>
+<table class="doxtable">
+<tr>
+<th>File/Folder </th><th>Content</th></tr>
+<tr>
+<td><b>CMSIS\Documentation\SVD</b> </td><td>This documentation </td></tr>
+<tr>
+<td><b>CMSIS\SVD</b> </td><td>Exemplary SVD file (<a class="el" href="svd__example_pg.html">ARM_Example.svd</a>) and generated header file (ARM_Example.h). </td></tr>
+</table>
+<p>&#160;</p>
+<hr/>
+ </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/jquery.js b/CMSIS/Documentation/SVD/html/jquery.js
new file mode 100644
index 0000000..78ad0bd
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/jquery.js
@@ -0,0 +1,77 @@
+/*! jQuery v1.7.1 jquery.com | jquery.org/license */
+(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function cb(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function ca(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bE.test(a)?d(a,e):ca(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)ca(a+"["+e+"]",b[e],c,d);else d(a,b)}function b_(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bT,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bP),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bC(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bx:by,g=0,h=e.length;if(d>0){if(c!=="border")for(;g<h;g++)c||(d-=parseFloat(f.css(a,"padding"+e[g]))||0),c==="margin"?d+=parseFloat(f.css(a,c+e[g]))||0:d-=parseFloat(f.css(a,"border"+e[g]+"Width"))||0;return d+"px"}d=bz(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0;if(c)for(;g<h;g++)d+=parseFloat(f.css(a,"padding"+e[g]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+e[g]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+e[g]))||0);return d+"px"}function bp(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c+(i[c][d].namespace?".":"")+i[c][d].namespace,i[c][d],i[c][d].data)}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?m(g):h==="function"&&(!a.unique||!o.has(g))&&c.push(g)},n=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,l=j||0,j=0,k=c.length;for(;c&&l<k;l++)if(c[l].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}i=!1,c&&(a.once?e===!0?o.disable():c=[]:d&&d.length&&(e=d.shift(),o.fireWith(e[0],e[1])))},o={add:function(){if(c){var a=c.length;m(arguments),i?k=c.length:e&&e!==!0&&(j=a,n(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){i&&f<=k&&(k--,f<=l&&l--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&o.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(i?a.once||d.push([b,c]):(!a.once||!e)&&n(b,c));return this},fire:function(){o.fireWith(this,arguments);return this},fired:function(){return!!e}};return o};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function()
+{g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p,q=c.createElement("div"),r=c.documentElement;q.setAttribute("className","t"),q.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="<div "+n+"><div></div></div>"+"<table "+n+" cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="<div style='width:4px;'></div>",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var i=0,j=e.length;i<j;i++)g=e[i].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),l(this[0],g,h[g]));f._data(this[0],"parsedAttrs",!0)}}return h}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split("."),d[1]=d[1]?"."+d[1]:"";if(c===b){h=this.triggerHandler("getData"+d[1]+"!",[d[0]]),h===b&&this.length&&(h=f.data(this[0],a),h=l(this[0],a,h));return h===b&&d[1]?this.data(d[0]):h}return this.each(function(){var b=f(this),e=[d[0],c];b.triggerHandler("setData"+d[1]+"!",e),f.data(this,a,c),b.triggerHandler("changeData"+d[1]+"!",e)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise()}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h<g;h++)e=d[h],e&&(c=f.propFix[e]||e,f.attr(a,e,""),a.removeAttribute(v?e:c),u.test(e)&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};
+f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=[],j,k,l,m,n,o,p,q,r,s,t;g[0]=c,c.delegateTarget=this;if(e&&!c.target.disabled&&(!c.button||c.type!=="click")){m=f(this),m.context=this.ownerDocument||this;for(l=c.target;l!=this;l=l.parentNode||this){o={},q=[],m[0]=l;for(j=0;j<e;j++)r=d[j],s=r.selector,o[s]===b&&(o[s]=r.quick?H(l,r.quick):m.is(s)),o[s]&&q.push(r);q.length&&i.push({elem:l,matches:q})}}d.length>e&&i.push({elem:this,matches:d.slice(e)});for(j=0;j<i.length&&!c.isPropagationStopped();j++){p=i[j],c.currentTarget=p.elem;for(k=0;k<p.matches.length&&!c.isImmediatePropagationStopped();k++){r=p.matches[k];if(h||!c.namespace&&!r.namespace||c.namespace_re&&c.namespace_re.test(r.namespace))c.data=r.data,c.handleObj=r,n=((f.event.special[r.origType]||{}).handle||r.handler).apply(p.elem,g),n!==b&&(c.result=n,n===!1&&(c.preventDefault(),c.stopPropagation()))}}return c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0)}),d._submit_attached=!0)})},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on.call(this,a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.type+"."+e.namespace:e.type,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d
+&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.POS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),
+f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function()
+{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bp)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bn(k[i]);else bn(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bq=/alpha\([^)]*\)/i,br=/opacity=([^)]*)/,bs=/([A-Z]|^ms)/g,bt=/^-?\d+(?:px)?$/i,bu=/^-?\d/,bv=/^([\-+])=([\-+.\de]+)/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bv.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bC(a,b,d);f.swap(a,bw,function(){e=bC(a,b,d)});return e}},set:function(a,b){if(!bt.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c)
+{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cv(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cn.test(h)?(o=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),o?(f._data(this,"toggle"+i,o==="show"?"hide":"show"),j[o]()):j[h]()):(k=co.exec(h),l=j.cur(),k?(m=parseFloat(k[2]),n=k[3]||(f.cssNumber[i]?"":"px"),n!=="px"&&(f.style(this,i,(m||1)+n),l=(m||1)/j.cur()*l,f.style(this,i,l+n)),k[1]&&(m=(k[1]==="-="?-1:1)*m+l),j.custom(l,m,n)):j.custom(l,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cr||cs(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){e.options.hide&&f._data(e.elem,"fxshow"+e.prop)===b&&f._data(e.elem,"fxshow"+e.prop,e.start)},h()&&f.timers.push(h)&&!cp&&(cp=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cr||cs(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cp),cp=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(["width","height"],function(a,b){f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.support.fixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.support.fixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);
+/*!
+ * jQuery UI 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;if(b[d]>0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}}))})(jQuery);
+/*!
+ * jQuery UI Widget 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}});return d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e;if(f&&e.charAt(0)==="_")return h;f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b){h=f;return!1}}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))});return h}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}this._setOptions(e);return this},_setOptions:function(b){var c=this;a.each(b,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,b){this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b);return this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);this.element.trigger(c,d);return!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);
+/*!
+ * jQuery UI Mouse 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ * jquery.ui.widget.js
+ */
+(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent")){a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation();return!1}}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(b){if(!c){this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted){b.preventDefault();return!0}}!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0;return!0}},_mouseMove:function(b){if(a.browser.msie&&!(document.documentMode>=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery);
+/*
+ * jQuery UI Resizable 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Resizables
+ *
+ * Depends:
+ * jquery.ui.core.js
+ * jquery.ui.mouse.js
+ * jquery.ui.widget.js
+ */
+(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e<d.length;e++){var f=a.trim(d[e]),g="ui-resizable-"+f,h=a('<div class="ui-resizable-handle '+g+'"></div>');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),e<h.maxWidth&&(h.maxWidth=e),g<h.maxHeight&&(h.maxHeight=g);this._vBoundaries=h},_updateCache:function(a){var b=this.options;this.offset=this.helper.offset(),d(a.left)&&(this.position.left=a.left),d(a.top)&&(this.position.top=a.top),d(a.height)&&(this.size.height=a.height),d(a.width)&&(this.size.width=a.width)},_updateRatio:function(a,b){var c=this.options,e=this.position,f=this.size,g=this.axis;d(a.height)?a.width=a.height*this.aspectRatio:d(a.width)&&(a.height=a.width/this.aspectRatio),g=="sw"&&(a.left=e.left+(f.width-a.width),a.top=null),g=="nw"&&(a.top=e.top+(f.height-a.height),a.left=e.left+(f.width-a.width));return a},_respectSize:function(a,b){var c=this.helper,e=this._vBoundaries,f=this._aspectRatio||b.shiftKey,g=this.axis,h=d(a.width)&&e.maxWidth&&e.maxWidth<a.width,i=d(a.height)&&e.maxHeight&&e.maxHeight<a.height,j=d(a.width)&&e.minWidth&&e.minWidth>a.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d<this._proportionallyResizeElements.length;d++){var e=this._proportionallyResizeElements[d];if(!this.borderDif){var f=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],g=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];this.borderDif=a.map(f,function(a,b){var c=parseInt(a,10)||0,d=parseInt(g[b],10)||0;return c+d})}if(a.browser.msie&&(!!a(c).is(":hidden")||!!a(c).parents(":hidden").length))continue;e.css({height:c.height()-this.borderDif[0]-this.borderDif[2]||0,width:c.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var b=this.element,c=this.options;this.elementOffset=b.offset();if(this._helper){this.helper=this.helper||a('<div style="overflow:hidden;"></div>');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p
+&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery);
+/*
+ * jQuery hashchange event - v1.3 - 7/21/2010
+ * http://benalman.com/projects/jquery-hashchange-plugin/
+ *
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);
+/**
+ * jQuery.ScrollTo - Easy element scrolling using jQuery.
+ * Copyright (c) 2007-2009 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com
+ * Dual licensed under MIT and GPL.
+ * Date: 5/25/2009
+ * @author Ariel Flesler
+ * @version 1.4.2
+ *
+ * http://flesler.blogspot.com/2007/10/jqueryscrollto.html
+ */
+;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);
diff --git a/CMSIS/Documentation/SVD/html/modules.html b/CMSIS/Documentation/SVD/html/modules.html
new file mode 100644
index 0000000..17adffa
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/modules.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Reference</title>
+<title>CMSIS-SVD: Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li class="current"><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('modules.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all modules:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_')"/><a class="el" href="group__svd___format__gr.html" target="_self">SVD File Schema Levels</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__svd__xml__device__gr.html" target="_self">Device Level</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__svd__xml__peripherals__gr.html" target="_self">Peripherals Level</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__svd__xml__registers__gr.html" target="_self">Registers Level</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__svd__xml__fields__gr.html" target="_self">Fields Level</a></td><td class="desc"></td></tr>
+<tr id="row_0_4_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__svd__xml__enum__gr.html" target="_self">Enumerated Values Level</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="even"><td class="entry"><img id="arr_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_')"/><a class="el" href="group__elem__type__gr.html" target="_self">Element Groups</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__dim_element_group__gr.html" target="_self">dimElementGroup</a></td><td class="desc"></td></tr>
+<tr id="row_1_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__register_properties_group__gr.html" target="_self">registerPropertiesGroup</a></td><td class="desc"></td></tr>
+<tr id="row_1_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__protection_string_type__gr.html" target="_self">protectionStringType_gr</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><img id="arr_2_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_')"/><a class="el" href="group__svd___format__1__1__gr.html" target="_self">SVD Extensions</a></td><td class="desc"></td></tr>
+<tr id="row_2_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__device_section_extensions__gr.html" target="_self">Extensions to the Device Section</a></td><td class="desc"></td></tr>
+<tr id="row_2_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__cpu_section__gr.html" target="_self">CPU Section</a></td><td class="desc"></td></tr>
+<tr id="row_2_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__peripheral_section_extensions__gr.html" target="_self">Extensions to the Peripheral Section</a></td><td class="desc"></td></tr>
+<tr id="row_2_3_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__cluster_level__gr.html" target="_self">Cluster Level</a></td><td class="desc"></td></tr>
+<tr id="row_2_4_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__register_section_extensions__gr.html" target="_self">Extensions to the Register Section</a></td><td class="desc"></td></tr>
+<tr id="row_3_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__schema__1__2__gr.html" target="_self">CMSIS-SVD Schema File</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/modules.js b/CMSIS/Documentation/SVD/html/modules.js
new file mode 100644
index 0000000..ef9b26d
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/modules.js
@@ -0,0 +1,7 @@
+var modules =
+[
+ [ "SVD File Schema Levels", "group__svd___format__gr.html", "group__svd___format__gr" ],
+ [ "Element Groups", "group__elem__type__gr.html", "group__elem__type__gr" ],
+ [ "SVD Extensions", "group__svd___format__1__1__gr.html", "group__svd___format__1__1__gr" ],
+ [ "CMSIS-SVD Schema File", "group__schema__1__2__gr.html", null ]
+]; \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/nav_f.png b/CMSIS/Documentation/SVD/html/nav_f.png
new file mode 100644
index 0000000..72a58a5
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/nav_f.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/nav_g.png b/CMSIS/Documentation/SVD/html/nav_g.png
new file mode 100644
index 0000000..2093a23
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/nav_g.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/nav_h.png b/CMSIS/Documentation/SVD/html/nav_h.png
new file mode 100644
index 0000000..33389b1
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/nav_h.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/navtree.css b/CMSIS/Documentation/SVD/html/navtree.css
new file mode 100644
index 0000000..8001f82
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/navtree.css
@@ -0,0 +1,143 @@
+#nav-tree .children_ul {
+ margin:0;
+ padding:4px;
+}
+
+#nav-tree ul {
+ list-style:none outside none;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree li {
+ white-space:nowrap;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .plus {
+ margin:0px;
+}
+
+#nav-tree .selected {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
+
+#nav-tree img {
+ margin:0px;
+ padding:0px;
+ border:0px;
+ vertical-align: middle;
+}
+
+#nav-tree a {
+ text-decoration:none;
+ padding:0px;
+ margin:0px;
+ outline:none;
+}
+
+#nav-tree .label {
+ margin:0px;
+ padding:0px;
+ font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+#nav-tree .label a {
+ padding:2px;
+}
+
+#nav-tree .selected a {
+ text-decoration:none;
+ color:#fff;
+}
+
+#nav-tree .children_ul {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .item {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree {
+ padding: 0px 0px;
+ background-color: #FAFAFF;
+ font-size:14px;
+ overflow:auto;
+}
+
+#doc-content {
+ overflow:auto;
+ display:block;
+ padding:0px;
+ margin:0px;
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#side-nav {
+ padding:0 6px 0 0;
+ margin: 0px;
+ display:block;
+ position: absolute;
+ left: 0px;
+ width: 300px;
+}
+
+.ui-resizable .ui-resizable-handle {
+ display:block;
+}
+
+.ui-resizable-e {
+ background:url("ftv2splitbar.png") repeat scroll right center transparent;
+ cursor:e-resize;
+ height:100%;
+ right:0;
+ top:0;
+ width:6px;
+}
+
+.ui-resizable-handle {
+ display:none;
+ font-size:0.1px;
+ position:absolute;
+ z-index:1;
+}
+
+#nav-tree-contents {
+ margin: 6px 0px 0px 0px;
+}
+
+#nav-tree {
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#nav-sync {
+ position:absolute;
+ top:5px;
+ right:24px;
+ z-index:0;
+}
+
+#nav-sync img {
+ opacity:0.3;
+}
+
+#nav-sync img:hover {
+ opacity:0.9;
+}
+
+@media print
+{
+ #nav-tree { display: none; }
+ div.ui-resizable-handle { display: none; position: relative; }
+}
+
diff --git a/CMSIS/Documentation/SVD/html/navtree.js b/CMSIS/Documentation/SVD/html/navtree.js
new file mode 100644
index 0000000..3b9a0ff
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/navtree.js
@@ -0,0 +1,517 @@
+var NAVTREE =
+[
+ [ "CMSIS-SVD", "index.html", [
+ [ "System View Description", "index.html", null ],
+ [ "CMSIS-SVD Web Interface User Guide", "svd_web_pg.html", "svd_web_pg" ],
+ [ "SVD File Format", "svd__outline_pg.html", null ],
+ [ "Revision History of CMSIS-SVD", "svd_revision_history.html", null ],
+ [ "SVD File Validation and Usage", "svd_validate_file_pg.html", null ],
+ [ "SVD File Example", "svd__example_pg.html", null ],
+ [ "SVDConv.exe", "svd__s_v_d_conv_pg.html", null ],
+ [ "Reference", "modules.html", "modules" ]
+ ] ]
+];
+
+var NAVTREEINDEX =
+[
+"group__cluster_level__gr.html"
+];
+
+var SYNCONMSG = 'click to disable panel synchronisation';
+var SYNCOFFMSG = 'click to enable panel synchronisation';
+var navTreeSubIndices = new Array();
+
+function getData(varName)
+{
+ var i = varName.lastIndexOf('/');
+ var n = i>=0 ? varName.substring(i+1) : varName;
+ return eval(n.replace(/\-/g,'_'));
+}
+
+function stripPath(uri)
+{
+ return uri.substring(uri.lastIndexOf('/')+1);
+}
+
+function stripPath2(uri)
+{
+ var i = uri.lastIndexOf('/');
+ var s = uri.substring(i+1);
+ var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/);
+ return m ? uri.substring(i-6) : s;
+}
+
+function localStorageSupported()
+{
+ try {
+ return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem;
+ }
+ catch(e) {
+ return false;
+ }
+}
+
+
+function storeLink(link)
+{
+ if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) {
+ window.localStorage.setItem('navpath',link);
+ }
+}
+
+function deleteLink()
+{
+ if (localStorageSupported()) {
+ window.localStorage.setItem('navpath','');
+ }
+}
+
+function cachedLink()
+{
+ if (localStorageSupported()) {
+ return window.localStorage.getItem('navpath');
+ } else {
+ return '';
+ }
+}
+
+function getScript(scriptName,func,show)
+{
+ var head = document.getElementsByTagName("head")[0];
+ var script = document.createElement('script');
+ script.id = scriptName;
+ script.type = 'text/javascript';
+ script.onload = func;
+ script.src = scriptName+'.js';
+ if ($.browser.msie && $.browser.version<=8) {
+ // script.onload does work with older versions of IE
+ script.onreadystatechange = function() {
+ if (script.readyState=='complete' || script.readyState=='loaded') {
+ func(); if (show) showRoot();
+ }
+ }
+ }
+ head.appendChild(script);
+}
+
+function createIndent(o,domNode,node,level)
+{
+ if (node.parentNode && node.parentNode.parentNode) {
+ createIndent(o,domNode,node.parentNode,level+1);
+ }
+ var imgNode = document.createElement("img");
+ imgNode.width = 16;
+ imgNode.height = 22;
+ if (level==0 && node.childrenData) {
+ node.plus_img = imgNode;
+ node.expandToggle = document.createElement("a");
+ node.expandToggle.href = "javascript:void(0)";
+ node.expandToggle.onclick = function() {
+ if (node.expanded) {
+ $(node.getChildrenUL()).slideUp("fast");
+ if (node.isLast) {
+ node.plus_img.src = node.relpath+"ftv2plastnode.png";
+ } else {
+ node.plus_img.src = node.relpath+"ftv2pnode.png";
+ }
+ node.expanded = false;
+ } else {
+ expandNode(o, node, false, false);
+ }
+ }
+ node.expandToggle.appendChild(imgNode);
+ domNode.appendChild(node.expandToggle);
+ } else {
+ domNode.appendChild(imgNode);
+ }
+ if (level==0) {
+ if (node.isLast) {
+ if (node.childrenData) {
+ imgNode.src = node.relpath+"ftv2plastnode.png";
+ } else {
+ imgNode.src = node.relpath+"ftv2lastnode.png";
+ domNode.appendChild(imgNode);
+ }
+ } else {
+ if (node.childrenData) {
+ imgNode.src = node.relpath+"ftv2pnode.png";
+ } else {
+ imgNode.src = node.relpath+"ftv2node.png";
+ domNode.appendChild(imgNode);
+ }
+ }
+ } else {
+ if (node.isLast) {
+ imgNode.src = node.relpath+"ftv2blank.png";
+ } else {
+ imgNode.src = node.relpath+"ftv2vertline.png";
+ }
+ }
+ imgNode.border = "0";
+}
+
+function newNode(o, po, text, link, childrenData, lastNode)
+{
+ var node = new Object();
+ node.children = Array();
+ node.childrenData = childrenData;
+ node.depth = po.depth + 1;
+ node.relpath = po.relpath;
+ node.isLast = lastNode;
+
+ node.li = document.createElement("li");
+ po.getChildrenUL().appendChild(node.li);
+ node.parentNode = po;
+
+ node.itemDiv = document.createElement("div");
+ node.itemDiv.className = "item";
+
+ node.labelSpan = document.createElement("span");
+ node.labelSpan.className = "label";
+
+ createIndent(o,node.itemDiv,node,0);
+ node.itemDiv.appendChild(node.labelSpan);
+ node.li.appendChild(node.itemDiv);
+
+ var a = document.createElement("a");
+ node.labelSpan.appendChild(a);
+ node.label = document.createTextNode(text);
+ node.expanded = false;
+ a.appendChild(node.label);
+ if (link) {
+ var url;
+ if (link.substring(0,1)=='^') {
+ url = link.substring(1);
+ link = url;
+ } else {
+ url = node.relpath+link;
+ }
+ a.className = stripPath(link.replace('#',':'));
+ if (link.indexOf('#')!=-1) {
+ var aname = '#'+link.split('#')[1];
+ var srcPage = stripPath($(location).attr('pathname'));
+ var targetPage = stripPath(link.split('#')[0]);
+ a.href = srcPage!=targetPage ? url : '#';
+ a.onclick = function(){
+ storeLink(link);
+ if (!$(a).parent().parent().hasClass('selected'))
+ {
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ $(a).parent().parent().addClass('selected');
+ $(a).parent().parent().attr('id','selected');
+ }
+ var pos, anchor = $(aname), docContent = $('#doc-content');
+ if (anchor.parent().attr('class')=='memItemLeft') {
+ pos = anchor.parent().position().top;
+ } else if (anchor.position()) {
+ pos = anchor.position().top;
+ }
+ if (pos) {
+ var dist = Math.abs(Math.min(
+ pos-docContent.offset().top,
+ docContent[0].scrollHeight-
+ docContent.height()-docContent.scrollTop()));
+ docContent.animate({
+ scrollTop: pos + docContent.scrollTop() - docContent.offset().top
+ },Math.max(50,Math.min(500,dist)),function(){
+ window.location.replace(aname);
+ });
+ }
+ };
+ } else {
+ a.href = url;
+ a.onclick = function() { storeLink(link); }
+ }
+ } else {
+ if (childrenData != null)
+ {
+ a.className = "nolink";
+ a.href = "javascript:void(0)";
+ a.onclick = node.expandToggle.onclick;
+ }
+ }
+
+ node.childrenUL = null;
+ node.getChildrenUL = function() {
+ if (!node.childrenUL) {
+ node.childrenUL = document.createElement("ul");
+ node.childrenUL.className = "children_ul";
+ node.childrenUL.style.display = "none";
+ node.li.appendChild(node.childrenUL);
+ }
+ return node.childrenUL;
+ };
+
+ return node;
+}
+
+function showRoot()
+{
+ var headerHeight = $("#top").height();
+ var footerHeight = $("#nav-path").height();
+ var windowHeight = $(window).height() - headerHeight - footerHeight;
+ (function (){ // retry until we can scroll to the selected item
+ try {
+ var navtree=$('#nav-tree');
+ navtree.scrollTo('#selected',0,{offset:-windowHeight/2});
+ } catch (err) {
+ setTimeout(arguments.callee, 0);
+ }
+ })();
+}
+
+function expandNode(o, node, imm, showRoot)
+{
+ if (node.childrenData && !node.expanded) {
+ if (typeof(node.childrenData)==='string') {
+ var varName = node.childrenData;
+ getScript(node.relpath+varName,function(){
+ node.childrenData = getData(varName);
+ expandNode(o, node, imm, showRoot);
+ }, showRoot);
+ } else {
+ if (!node.childrenVisited) {
+ getNode(o, node);
+ } if (imm || ($.browser.msie && $.browser.version>8)) {
+ // somehow slideDown jumps to the start of tree for IE9 :-(
+ $(node.getChildrenUL()).show();
+ } else {
+ $(node.getChildrenUL()).slideDown("fast");
+ }
+ if (node.isLast) {
+ node.plus_img.src = node.relpath+"ftv2mlastnode.png";
+ } else {
+ node.plus_img.src = node.relpath+"ftv2mnode.png";
+ }
+ node.expanded = true;
+ }
+ }
+}
+
+function glowEffect(n,duration)
+{
+ n.addClass('glow').delay(duration).queue(function(next){
+ $(this).removeClass('glow');next();
+ });
+}
+
+function highlightAnchor()
+{
+ var anchor = $($(location).attr('hash'));
+ if (anchor.parent().attr('class')=='memItemLeft'){
+ var rows = $('.memberdecls tr[class$="'+
+ window.location.hash.substring(1)+'"]');
+ glowEffect(rows.children(),300); // member without details
+ } else if (anchor.parents().slice(2).prop('tagName')=='TR') {
+ glowEffect(anchor.parents('div.memitem'),1000); // enum value
+ } else if (anchor.parent().attr('class')=='fieldtype'){
+ glowEffect(anchor.parent().parent(),1000); // struct field
+ } else if (anchor.parent().is(":header")) {
+ glowEffect(anchor.parent(),1000); // section header
+ } else {
+ glowEffect(anchor.next(),1000); // normal member
+ }
+}
+
+function selectAndHighlight(hash,n)
+{
+ var a;
+ if (hash) {
+ var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1);
+ a=$('.item a[class$="'+link+'"]');
+ }
+ if (a && a.length) {
+ a.parent().parent().addClass('selected');
+ a.parent().parent().attr('id','selected');
+ highlightAnchor();
+ } else if (n) {
+ $(n.itemDiv).addClass('selected');
+ $(n.itemDiv).attr('id','selected');
+ }
+ showRoot();
+}
+
+function showNode(o, node, index, hash)
+{
+ if (node && node.childrenData) {
+ if (typeof(node.childrenData)==='string') {
+ var varName = node.childrenData;
+ getScript(node.relpath+varName,function(){
+ node.childrenData = getData(varName);
+ showNode(o,node,index,hash);
+ },true);
+ } else {
+ if (!node.childrenVisited) {
+ getNode(o, node);
+ }
+ $(node.getChildrenUL()).show();
+ if (node.isLast) {
+ node.plus_img.src = node.relpath+"ftv2mlastnode.png";
+ } else {
+ node.plus_img.src = node.relpath+"ftv2mnode.png";
+ }
+ node.expanded = true;
+ var n = node.children[o.breadcrumbs[index]];
+ if (index+1<o.breadcrumbs.length) {
+ showNode(o,n,index+1,hash);
+ } else {
+ if (typeof(n.childrenData)==='string') {
+ var varName = n.childrenData;
+ getScript(n.relpath+varName,function(){
+ n.childrenData = getData(varName);
+ node.expanded=false;
+ showNode(o,node,index,hash); // retry with child node expanded
+ },true);
+ } else {
+ var rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
+ if (rootBase=="index" || rootBase=="pages") {
+ expandNode(o, n, true, true);
+ }
+ selectAndHighlight(hash,n);
+ }
+ }
+ }
+ } else {
+ selectAndHighlight(hash);
+ }
+}
+
+function getNode(o, po)
+{
+ po.childrenVisited = true;
+ var l = po.childrenData.length-1;
+ for (var i in po.childrenData) {
+ var nodeData = po.childrenData[i];
+ po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2],
+ i==l);
+ }
+}
+
+function gotoNode(o,subIndex,root,hash,relpath)
+{
+ var nti = navTreeSubIndices[subIndex][root+hash];
+ o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
+ if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
+ navTo(o,NAVTREE[0][1],"",relpath);
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ }
+ if (o.breadcrumbs) {
+ o.breadcrumbs.unshift(0); // add 0 for root node
+ showNode(o, o.node, 0, hash);
+ }
+}
+
+function navTo(o,root,hash,relpath)
+{
+ var link = cachedLink();
+ if (link) {
+ var parts = link.split('#');
+ root = parts[0];
+ if (parts.length>1) hash = '#'+parts[1];
+ else hash='';
+ }
+ if (root==NAVTREE[0][1]) {
+ $('#nav-sync').css('top','30px');
+ } else {
+ $('#nav-sync').css('top','5px');
+ }
+ if (hash.match(/^#l\d+$/)) {
+ var anchor=$('a[name='+hash.substring(1)+']');
+ glowEffect(anchor.parent(),1000); // line number
+ hash=''; // strip line number anchors
+ //root=root.replace(/_source\./,'.'); // source link to doc link
+ }
+ var url=root+hash;
+ var i=-1;
+ while (NAVTREEINDEX[i+1]<=url) i++;
+ if (navTreeSubIndices[i]) {
+ gotoNode(o,i,root,hash,relpath)
+ } else {
+ getScript(relpath+'navtreeindex'+i,function(){
+ navTreeSubIndices[i] = eval('NAVTREEINDEX'+i);
+ if (navTreeSubIndices[i]) {
+ gotoNode(o,i,root,hash,relpath);
+ }
+ },true);
+ }
+}
+
+function showSyncOff(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
+}
+
+function showSyncOn(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_on.png"/ title="'+SYNCONMSG+'">');
+}
+
+function toggleSyncButton(relpath)
+{
+ var navSync = $('#nav-sync');
+ if (navSync.hasClass('sync')) {
+ navSync.removeClass('sync');
+ showSyncOff(navSync,relpath);
+ storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash'));
+ } else {
+ navSync.addClass('sync');
+ showSyncOn(navSync,relpath);
+ deleteLink();
+ }
+}
+
+function initNavTree(toroot,relpath)
+{
+ var o = new Object();
+ o.toroot = toroot;
+ o.node = new Object();
+ o.node.li = document.getElementById("nav-tree-contents");
+ o.node.childrenData = NAVTREE;
+ o.node.children = new Array();
+ o.node.childrenUL = document.createElement("ul");
+ o.node.getChildrenUL = function() { return o.node.childrenUL; };
+ o.node.li.appendChild(o.node.childrenUL);
+ o.node.depth = 0;
+ o.node.relpath = relpath;
+ o.node.expanded = false;
+ o.node.isLast = true;
+ o.node.plus_img = document.createElement("img");
+ o.node.plus_img.src = relpath+"ftv2pnode.png";
+ o.node.plus_img.width = 16;
+ o.node.plus_img.height = 22;
+
+ if (localStorageSupported()) {
+ var navSync = $('#nav-sync');
+ if (cachedLink()) {
+ showSyncOff(navSync,relpath);
+ navSync.removeClass('sync');
+ } else {
+ showSyncOn(navSync,relpath);
+ }
+ navSync.click(function(){ toggleSyncButton(relpath); });
+ }
+
+ navTo(o,toroot,window.location.hash,relpath);
+
+ $(window).bind('hashchange', function(){
+ if (window.location.hash && window.location.hash.length>1){
+ var a;
+ if ($(location).attr('hash')){
+ var clslink=stripPath($(location).attr('pathname'))+':'+
+ $(location).attr('hash').substring(1);
+ a=$('.item a[class$="'+clslink+'"]');
+ }
+ if (a==null || !$(a).parent().parent().hasClass('selected')){
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ }
+ var link=stripPath2($(location).attr('pathname'));
+ navTo(o,link,$(location).attr('hash'),relpath);
+ }
+ })
+
+ $(window).load(showRoot);
+}
+
diff --git a/CMSIS/Documentation/SVD/html/navtreeindex0.js b/CMSIS/Documentation/SVD/html/navtreeindex0.js
new file mode 100644
index 0000000..4d171b4
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/navtreeindex0.js
@@ -0,0 +1,40 @@
+var NAVTREEINDEX0 =
+{
+"group__cluster_level__gr.html":[7,2,3],
+"group__cpu_section__gr.html":[7,2,1],
+"group__device_section_extensions__gr.html":[7,2,0],
+"group__dim_element_group__gr.html":[7,1,0],
+"group__elem__type__gr.html":[7,1],
+"group__peripheral_section_extensions__gr.html":[7,2,2],
+"group__protection_string_type__gr.html":[7,1,2],
+"group__register_properties_group__gr.html":[7,1,1],
+"group__register_section_extensions__gr.html":[7,2,4],
+"group__schema__1__2__gr.html":[7,3],
+"group__svd___format__1__1__gr.html":[7,2],
+"group__svd___format__gr.html":[7,0],
+"group__svd__xml__device__gr.html":[7,0,0],
+"group__svd__xml__enum__gr.html":[7,0,4],
+"group__svd__xml__fields__gr.html":[7,0,3],
+"group__svd__xml__peripherals__gr.html":[7,0,1],
+"group__svd__xml__registers__gr.html":[7,0,2],
+"index.html":[],
+"index.html":[0],
+"modules.html":[7],
+"pages.html":[],
+"svd__example_pg.html":[5],
+"svd__outline_pg.html":[2],
+"svd__s_v_d_conv_pg.html":[6],
+"svd_revision_history.html":[3],
+"svd_validate_file_pg.html":[4],
+"svd_web_pg.html":[1],
+"svd_web_public_pg.html":[1,0],
+"svd_web_public_pg.html#accept_EULA_sec":[1,0,2],
+"svd_web_public_pg.html#downl_downl_sec":[1,0,3],
+"svd_web_public_pg.html#login_downl_sec":[1,0,0],
+"svd_web_public_pg.html#open_downl_sec":[1,0,1],
+"svd_web_restricted_pg.html":[1,1],
+"svd_web_restricted_pg.html#login_mgmnt_dd_sec":[1,1,1],
+"svd_web_restricted_pg.html#manage_dd_entries_sec":[1,1,3],
+"svd_web_restricted_pg.html#open_mgmnt_ss_sec":[1,1,2],
+"svd_web_restricted_pg.html#sign_agreement_sec":[1,1,0]
+};
diff --git a/CMSIS/Documentation/SVD/html/open.png b/CMSIS/Documentation/SVD/html/open.png
new file mode 100644
index 0000000..30f75c7
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/open.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/pages.html b/CMSIS/Documentation/SVD/html/pages.html
new file mode 100644
index 0000000..e72edf0
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/pages.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Usage and Description</title>
+<title>CMSIS-SVD: Usage and Description</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('pages.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Usage and Description</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="svd_revision_history.html" target="_self">Revision History of CMSIS-SVD</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="svd_validate_file_pg.html" target="_self">SVD File Validation and Usage</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="svd__example_pg.html" target="_self">SVD File Example</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="svd__s_v_d_conv_pg.html" target="_self">SVDConv.exe</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/printComponentTabs.js b/CMSIS/Documentation/SVD/html/printComponentTabs.js
new file mode 100644
index 0000000..64d846b
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/printComponentTabs.js
@@ -0,0 +1,36 @@
+var strgURL = location.pathname; // path of current component
+
+// constuctor for the array of objects
+function tabElement(id, folderName, tabTxt ) {
+ this.id = id; // elementID as needed in html;
+ this.folderName = folderName; // folder name of the component
+ this.tabTxt = tabTxt; // Text displayed as menu on the web
+ this.currentListItem = '<li id="' + this.id + '" class="current"> <a href="../..' + this.folderName + 'index.html"><span>' + this.tabTxt + '</span></a></li>';
+ this.listItem = '<li id="' + this.id + '"> <a href="../..' + this.folderName + 'index.html"><span>' + this.tabTxt + '</span></a></li>';
+};
+
+// array of objects
+var arr = [];
+
+// fill array
+ arr.push( new tabElement( "GEN", "/General/html/", "General") );
+ arr.push( new tabElement( "CORE", "/Core/html/", "Core") );
+ arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") );
+ arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") );
+ arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") );
+ arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") );
+ arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") );
+ arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") );
+ arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") );
+
+// write tabs
+// called from the header file.
+function writeComponentTabs() {
+ for ( var i=0; i < arr.length; i++ ) {
+ if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder
+ document.write(arr[i].currentListItem); // then print and hightlight the tab
+ } else {
+ document.write(arr[i].listItem); // else, print the tab
+ }
+ }
+};
diff --git a/CMSIS/Documentation/SVD/html/resize.js b/CMSIS/Documentation/SVD/html/resize.js
new file mode 100644
index 0000000..9fe82ba
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/resize.js
@@ -0,0 +1,93 @@
+var cookie_namespace = 'doxygen';
+var sidenav,navtree,content,header;
+
+function readCookie(cookie)
+{
+ var myCookie = cookie_namespace+"_"+cookie+"=";
+ if (document.cookie)
+ {
+ var index = document.cookie.indexOf(myCookie);
+ if (index != -1)
+ {
+ var valStart = index + myCookie.length;
+ var valEnd = document.cookie.indexOf(";", valStart);
+ if (valEnd == -1)
+ {
+ valEnd = document.cookie.length;
+ }
+ var val = document.cookie.substring(valStart, valEnd);
+ return val;
+ }
+ }
+ return 0;
+}
+
+function writeCookie(cookie, val, expiration)
+{
+ if (val==undefined) return;
+ if (expiration == null)
+ {
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week
+ expiration = date.toGMTString();
+ }
+ document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/";
+}
+
+function resizeWidth()
+{
+ var windowWidth = $(window).width() + "px";
+ var sidenavWidth = $(sidenav).width();
+ content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar
+ writeCookie('width',sidenavWidth, null);
+}
+
+function restoreWidth(navWidth)
+{
+ var windowWidth = $(window).width() + "px";
+ content.css({marginLeft:parseInt(navWidth)+6+"px"});
+ sidenav.css({width:navWidth + "px"});
+}
+
+function resizeHeight()
+{
+ var headerHeight = header.height();
+ var footerHeight = footer.height();
+ var windowHeight = $(window).height() - headerHeight - footerHeight;
+ content.css({height:windowHeight + "px"});
+ navtree.css({height:windowHeight + "px"});
+ sidenav.css({height:windowHeight + "px",top: headerHeight+"px"});
+}
+
+function initResizable()
+{
+ header = $("#top");
+ sidenav = $("#side-nav");
+ content = $("#doc-content");
+ navtree = $("#nav-tree");
+ footer = $("#nav-path");
+ $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
+ $(window).resize(function() { resizeHeight(); });
+ var width = readCookie('width');
+ if (width) { restoreWidth(width); } else { resizeWidth(); }
+ resizeHeight();
+ var url = location.href;
+ var i=url.indexOf("#");
+ if (i>=0) window.location.hash=url.substr(i);
+ var _preventDefault = function(evt) { evt.preventDefault(); };
+ $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
+ $(document).bind('touchmove',function(e){
+ try {
+ var target = e.target;
+ while (target) {
+ if ($(target).css('-webkit-overflow-scrolling')=='touch') return;
+ target = target.parentNode;
+ }
+ e.preventDefault();
+ } catch(err) {
+ e.preventDefault();
+ }
+ });
+}
+
+
diff --git a/CMSIS/Documentation/SVD/html/svd__example_pg.html b/CMSIS/Documentation/SVD/html/svd__example_pg.html
new file mode 100644
index 0000000..193ccf1
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd__example_pg.html
@@ -0,0 +1,876 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVD File Example</title>
+<title>CMSIS-SVD: SVD File Example</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd__example_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">SVD File Example </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><pre class="fragment">&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+&lt;!-- File naming: &lt;part/series name&gt;.svd --&gt;
+
+&lt;!--
+ Copyright (C) 2012-2014 ARM Limited. All rights reserved.
+
+ Purpose: System Viewer Description (SVD) Example (Schema Version 1.1)
+ This is a description of a none-existent and incomplete device
+ for demonstration purposes only.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ - Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ - Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ - Neither the name of ARM nor the names of its contributors may be used
+ to endorse or promote products derived from this software without
+ specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+ --&gt;
+
+&lt;device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd" &gt;
+ &lt;vendor&gt;ARM Ltd.&lt;/vendor&gt; &lt;!-- device vendor name --&gt;
+ &lt;vendorID&gt;ARM&lt;/vendorID&gt; &lt;!-- device vendor short name --&gt;
+ &lt;name&gt;ARM_Example&lt;/name&gt; &lt;!-- name of part--&gt;
+ &lt;series&gt;ARMCM3&lt;/series&gt; &lt;!-- device series the device belongs to --&gt;
+ &lt;version&gt;1.2&lt;/version&gt; &lt;!-- version of this description, adding CMSIS-SVD 1.1 tags --&gt;
+ &lt;description&gt;ARM 32-bit Cortex-M3 Microcontroller based device, CPU clock up to 80MHz, etc. &lt;/description&gt;
+ &lt;licenseText&gt; &lt;!-- this license text will appear in header file. \n force line breaks --&gt;
+ ARM Limited (ARM) is supplying this software for use with Cortex-M\n
+ processor based microcontroller, but can be equally used for other\n
+ suitable processor architectures. This file can be freely distributed.\n
+ Modifications to this file shall be clearly marked.\n
+ \n
+ THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED\n
+ OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF\n
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.\n
+ ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR\n
+ CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
+ &lt;/licenseText&gt;
+ &lt;cpu&gt; &lt;!-- details about the cpu embedded in the device --&gt;
+ &lt;name&gt;CM3&lt;/name&gt;
+ &lt;revision&gt;r1p0&lt;/revision&gt;
+ &lt;endian&gt;little&lt;/endian&gt;
+ &lt;mpuPresent&gt;true&lt;/mpuPresent&gt;
+ &lt;fpuPresent&gt;false&lt;/fpuPresent&gt;
+ &lt;nvicPrioBits&gt;3&lt;/nvicPrioBits&gt;
+ &lt;vendorSystickConfig&gt;false&lt;/vendorSystickConfig&gt;
+ &lt;/cpu&gt;
+ &lt;addressUnitBits&gt;8&lt;/addressUnitBits&gt; &lt;!-- byte addressable memory --&gt;
+ &lt;width&gt;32&lt;/width&gt; &lt;!-- bus width is 32 bits --&gt;
+ &lt;!-- default settings implicitly inherited by subsequent sections --&gt;
+ &lt;size&gt;32&lt;/size&gt; &lt;!-- this is the default size (number of bits) of all peripherals
+ and register that do not define "size" themselves --&gt;
+ &lt;access&gt;read-write&lt;/access&gt; &lt;!-- default access permission for all subsequent registers --&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt; &lt;!-- by default all bits of the registers are initialized to 0 on reset --&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt; &lt;!-- by default all 32Bits of the registers are used --&gt;
+
+ &lt;peripherals&gt;
+ &lt;!-- Timer 0 --&gt;
+ &lt;peripheral&gt;
+ &lt;name&gt;TIMER0&lt;/name&gt;
+ &lt;version&gt;1.0&lt;/version&gt;
+ &lt;description&gt;32 Timer / Counter, counting up or down from different sources&lt;/description&gt;
+ &lt;groupName&gt;TIMER&lt;/groupName&gt;
+ &lt;baseAddress&gt;0x40010000&lt;/baseAddress&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+
+ &lt;addressBlock&gt;
+ &lt;offset&gt;0&lt;/offset&gt;
+ &lt;size&gt;0x100&lt;/size&gt;
+ &lt;usage&gt;registers&lt;/usage&gt;
+ &lt;/addressBlock&gt;
+
+ &lt;interrupt&gt;
+ &lt;name&gt;TIMER0&lt;/name&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/interrupt&gt;
+
+ &lt;registers&gt;
+ &lt;!-- CR: Control Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;CR&lt;/name&gt;
+ &lt;description&gt;Control Register&lt;/description&gt;
+ &lt;addressOffset&gt;0x00&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0x1337F7F&lt;/resetMask&gt;
+
+ &lt;fields&gt;
+ &lt;!-- EN: Enable --&gt;
+ &lt;field&gt;
+ &lt;name&gt;EN&lt;/name&gt;
+ &lt;description&gt;Enable&lt;/description&gt;
+ &lt;bitRange&gt;[0:0]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Disable&lt;/name&gt;
+ &lt;description&gt;Timer is disabled and does not operate&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Enable&lt;/name&gt;
+ &lt;description&gt;Timer is enabled and can operate&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- RST: Reset --&gt;
+ &lt;field&gt;
+ &lt;name&gt;RST&lt;/name&gt;
+ &lt;description&gt;Reset Timer&lt;/description&gt;
+ &lt;bitRange&gt;[1:1]&lt;/bitRange&gt;
+ &lt;access&gt;write-only&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;No_Action&lt;/name&gt;
+ &lt;description&gt;Write as ZERO if necessary&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Reset_Timer&lt;/name&gt;
+ &lt;description&gt;Reset the Timer&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- CNT: Counting Direction --&gt;
+ &lt;field&gt;
+ &lt;name&gt;CNT&lt;/name&gt;
+ &lt;description&gt;Counting direction&lt;/description&gt;
+ &lt;bitRange&gt;[3:2]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Count_UP&lt;/name&gt;
+ &lt;description&gt;Timer Counts UO and wraps, if no STOP condition is set&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Count_DOWN&lt;/name&gt;
+ &lt;description&gt;Timer Counts DOWN and wraps, if no STOP condition is set&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Toggle&lt;/name&gt;
+ &lt;description&gt;Timer Counts up to MAX, then DOWN to ZERO, if no STOP condition is set&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- MODE: Operation Mode --&gt;
+ &lt;field&gt;
+ &lt;name&gt;MODE&lt;/name&gt;
+ &lt;description&gt;Operation Mode&lt;/description&gt;
+ &lt;bitRange&gt;[6:4]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Continous&lt;/name&gt;
+ &lt;description&gt;Timer runs continously&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Single_ZERO_MAX&lt;/name&gt;
+ &lt;description&gt;Timer counts to 0x00 or 0xFFFFFFFF (depending on CNT) and stops&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Single_MATCH&lt;/name&gt;
+ &lt;description&gt;Timer counts to the Value of MATCH Register and stops&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Reload_ZERO_MAX&lt;/name&gt;
+ &lt;description&gt;Timer counts to 0x00 or 0xFFFFFFFF (depending on CNT), loads the RELOAD Value and continues&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Reload_MATCH&lt;/name&gt;
+ &lt;description&gt;Timer counts to the Value of MATCH Register, loads the RELOAD Value and continues&lt;/description&gt;
+ &lt;value&gt;4&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- PSC: Use Prescaler --&gt;
+ &lt;field&gt;
+ &lt;name&gt;PSC&lt;/name&gt;
+ &lt;description&gt;Use Prescaler&lt;/description&gt;
+ &lt;bitRange&gt;[7:7]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Disabled&lt;/name&gt;
+ &lt;description&gt;Prescaler is not used&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Enabled&lt;/name&gt;
+ &lt;description&gt;Prescaler is used as divider&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- CNTSRC: Timer / Counter Soruce Divider --&gt;
+ &lt;field&gt;
+ &lt;name&gt;CNTSRC&lt;/name&gt;
+ &lt;description&gt;Timer / Counter Source Divider&lt;/description&gt;
+ &lt;bitRange&gt;[11:8]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC&lt;/name&gt;
+ &lt;description&gt;Capture Source is used directly&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div2&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 2&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div4&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 4&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div8&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 8&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div16&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 16&lt;/description&gt;
+ &lt;value&gt;4&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div32&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 32&lt;/description&gt;
+ &lt;value&gt;5&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div64&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 64&lt;/description&gt;
+ &lt;value&gt;6&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div128&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 128&lt;/description&gt;
+ &lt;value&gt;7&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CAP_SRC_div256&lt;/name&gt;
+ &lt;description&gt;Capture Source is divided by 256&lt;/description&gt;
+ &lt;value&gt;8&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- CAPSRC: Timer / COunter Capture Source --&gt;
+ &lt;field&gt;
+ &lt;name&gt;CAPSRC&lt;/name&gt;
+ &lt;description&gt;Timer / Counter Capture Source&lt;/description&gt;
+ &lt;bitRange&gt;[15:12]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;CClk&lt;/name&gt;
+ &lt;description&gt;Core Clock&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_0&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 0&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_1&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 1&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_2&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 2&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_3&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 3&lt;/description&gt;
+ &lt;value&gt;4&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_4&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 4&lt;/description&gt;
+ &lt;value&gt;5&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_5&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 5&lt;/description&gt;
+ &lt;value&gt;6&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_6&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 6&lt;/description&gt;
+ &lt;value&gt;7&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOA_7&lt;/name&gt;
+ &lt;description&gt;GPIO A, PIN 7&lt;/description&gt;
+ &lt;value&gt;8&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOB_0&lt;/name&gt;
+ &lt;description&gt;GPIO B, PIN 0&lt;/description&gt;
+ &lt;value&gt;9&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOB_1&lt;/name&gt;
+ &lt;description&gt;GPIO B, PIN 1&lt;/description&gt;
+ &lt;value&gt;10&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOB_2&lt;/name&gt;
+ &lt;description&gt;GPIO B, PIN 2&lt;/description&gt;
+ &lt;value&gt;11&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOB_3&lt;/name&gt;
+ &lt;description&gt;GPIO B, PIN 3&lt;/description&gt;
+ &lt;value&gt;12&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOC_0&lt;/name&gt;
+ &lt;description&gt;GPIO C, PIN 0&lt;/description&gt;
+ &lt;value&gt;13&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOC_5&lt;/name&gt;
+ &lt;description&gt;GPIO C, PIN 1&lt;/description&gt;
+ &lt;value&gt;14&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;GPIOC_6&lt;/name&gt;
+ &lt;description&gt;GPIO C, PIN 2&lt;/description&gt;
+ &lt;value&gt;15&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- CAPEDGE: Capture Edge --&gt;
+ &lt;field&gt;
+ &lt;name&gt;CAPEDGE&lt;/name&gt;
+ &lt;description&gt;Capture Edge, select which Edge should result in a counter increment or decrement&lt;/description&gt;
+ &lt;bitRange&gt;[17:16]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RISING&lt;/name&gt;
+ &lt;description&gt;Only rising edges result in a counter increment or decrement&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;FALLING&lt;/name&gt;
+ &lt;description&gt;Only falling edges result in a counter increment or decrement&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;BOTH&lt;/name&gt;
+ &lt;description&gt;Rising and falling edges result in a counter increment or decrement&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- TRGEXT: Triggers an other Peripheral --&gt;
+ &lt;field&gt;
+ &lt;name&gt;TRGEXT&lt;/name&gt;
+ &lt;description&gt;Triggers an other Peripheral&lt;/description&gt;
+ &lt;bitRange&gt;[21:20]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;NONE&lt;/name&gt;
+ &lt;description&gt;No Trigger is emitted&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;DMA1&lt;/name&gt;
+ &lt;description&gt;DMA Controller 1 is triggered, dependant on MODE&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;DMA2&lt;/name&gt;
+ &lt;description&gt;DMA Controller 2 is triggered, dependant on MODE&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;UART&lt;/name&gt;
+ &lt;description&gt;UART is triggered, dependant on MODE&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- Reload: Selects Reload Register n --&gt;
+ &lt;field&gt;
+ &lt;name&gt;RELOAD&lt;/name&gt;
+ &lt;description&gt;Select RELOAD Register n to reload Timer on condition&lt;/description&gt;
+ &lt;bitRange&gt;[25:24]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD0&lt;/name&gt;
+ &lt;description&gt;Selects Reload Register number 0&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD1&lt;/name&gt;
+ &lt;description&gt;Selects Reload Register number 1&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD2&lt;/name&gt;
+ &lt;description&gt;Selects Reload Register number 2&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD3&lt;/name&gt;
+ &lt;description&gt;Selects Reload Register number 3&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- IDR: Inc or dec Reload Register Selection --&gt;
+ &lt;field&gt;
+ &lt;name&gt;IDR&lt;/name&gt;
+ &lt;description&gt;Selects, if Reload Register number is incremented, decremented or not modified&lt;/description&gt;
+ &lt;bitRange&gt;[27:26]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;KEEP&lt;/name&gt;
+ &lt;description&gt;Reload Register number does not change automatically&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;INCREMENT&lt;/name&gt;
+ &lt;description&gt;Reload Register number is incremented on each match&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;DECREMENT&lt;/name&gt;
+ &lt;description&gt;Reload Register number is decremented on each match&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- START: Starts / Stops the Timer/Counter --&gt;
+ &lt;field&gt;
+ &lt;name&gt;S&lt;/name&gt;
+ &lt;description&gt;Starts and Stops the Timer / Counter&lt;/description&gt;
+ &lt;bitRange&gt;[31:31]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;STOP&lt;/name&gt;
+ &lt;description&gt;Timer / Counter is stopped&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;START&lt;/name&gt;
+ &lt;description&gt;Timer / Counter is started&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+ &lt;/fields&gt;
+ &lt;/register&gt;
+
+ &lt;!-- SR: Status Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;SR&lt;/name&gt;
+ &lt;description&gt;Status Register&lt;/description&gt;
+ &lt;addressOffset&gt;0x04&lt;/addressOffset&gt;
+ &lt;size&gt;16&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xD701&lt;/resetMask&gt;
+
+ &lt;fields&gt;
+ &lt;!-- RUN: Shows if Timer is running --&gt;
+ &lt;field&gt;
+ &lt;name&gt;RUN&lt;/name&gt;
+ &lt;description&gt;Shows if Timer is running or not&lt;/description&gt;
+ &lt;bitRange&gt;[0:0]&lt;/bitRange&gt;
+ &lt;access&gt;read-only&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Stopped&lt;/name&gt;
+ &lt;description&gt;Timer is not running&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Running&lt;/name&gt;
+ &lt;description&gt;Timer is running&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- MATCH: Shows if a Match was hit --&gt;
+ &lt;field&gt;
+ &lt;name&gt;MATCH&lt;/name&gt;
+ &lt;description&gt;Shows if the MATCH was hit&lt;/description&gt;
+ &lt;bitRange&gt;[8:8]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;No_Match&lt;/name&gt;
+ &lt;description&gt;The MATCH condition was not hit&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Match_Hit&lt;/name&gt;
+ &lt;description&gt;The MATCH condition was hit&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- UN: Shows if an underflow occured --&gt;
+ &lt;field&gt;
+ &lt;name&gt;UN&lt;/name&gt;
+ &lt;description&gt;Shows if an underflow occured. This flag is sticky&lt;/description&gt;
+ &lt;bitRange&gt;[9:9]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;No_Underflow&lt;/name&gt;
+ &lt;description&gt;No underflow occured since last clear&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Underflow&lt;/name&gt;
+ &lt;description&gt;A minimum of one underflow occured since last clear&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- OV: Shows if an overflow occured --&gt;
+ &lt;field&gt;
+ &lt;name&gt;OV&lt;/name&gt;
+ &lt;description&gt;Shows if an overflow occured. This flag is sticky&lt;/description&gt;
+ &lt;bitRange&gt;[10:10]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;No_Overflow&lt;/name&gt;
+ &lt;description&gt;No overflow occured since last clear&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Overflow_occured&lt;/name&gt;
+ &lt;description&gt;A minimum of one overflow occured since last clear&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- RST: Shows if Timer is in RESET state --&gt;
+ &lt;field&gt;
+ &lt;name&gt;RST&lt;/name&gt;
+ &lt;description&gt;Shows if Timer is in RESET state&lt;/description&gt;
+ &lt;bitRange&gt;[12:12]&lt;/bitRange&gt;
+ &lt;access&gt;read-only&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Ready&lt;/name&gt;
+ &lt;description&gt;Timer is not in RESET state and can operate&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;In_Reset&lt;/name&gt;
+ &lt;description&gt;Timer is in RESET state and can not operate&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- RELOAD: Shows the currently active Reload Register --&gt;
+ &lt;field&gt;
+ &lt;name&gt;RELOAD&lt;/name&gt;
+ &lt;description&gt;Shows the currently active RELOAD Register&lt;/description&gt;
+ &lt;bitRange&gt;[15:14]&lt;/bitRange&gt;
+ &lt;access&gt;read-only&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD0&lt;/name&gt;
+ &lt;description&gt;Reload Register number 0 is active&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD1&lt;/name&gt;
+ &lt;description&gt;Reload Register number 1 is active&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD2&lt;/name&gt;
+ &lt;description&gt;Reload Register number 2 is active&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;RELOAD3&lt;/name&gt;
+ &lt;description&gt;Reload Register number 3 is active&lt;/description&gt;
+ &lt;value&gt;3&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+ &lt;/fields&gt;
+ &lt;/register&gt;
+
+ &lt;!-- INT: Interrupt Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;INT&lt;/name&gt;
+ &lt;description&gt;Interrupt Register&lt;/description&gt;
+ &lt;addressOffset&gt;0x10&lt;/addressOffset&gt;
+ &lt;size&gt;16&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0x0771&lt;/resetMask&gt;
+
+ &lt;fields&gt;
+ &lt;!-- EN: Interrupt Enable --&gt;
+ &lt;field&gt;
+ &lt;name&gt;EN&lt;/name&gt;
+ &lt;description&gt;Interrupt Enable&lt;/description&gt;
+ &lt;bitRange&gt;[0:0]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Disabled&lt;/name&gt;
+ &lt;description&gt;Timer does not generate Interrupts&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Enable&lt;/name&gt;
+ &lt;description&gt;Timer triggers the TIMERn Interrupt&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+
+ &lt;!-- MODE: Interrupt Mode --&gt;
+ &lt;field&gt;
+ &lt;name&gt;MODE&lt;/name&gt;
+ &lt;description&gt;Interrupt Mode, selects on which condition the Timer should generate an Interrupt&lt;/description&gt;
+ &lt;bitRange&gt;[6:4]&lt;/bitRange&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;enumeratedValues&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Match&lt;/name&gt;
+ &lt;description&gt;Timer generates an Interrupt when the MATCH condition is hit&lt;/description&gt;
+ &lt;value&gt;0&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Underflow&lt;/name&gt;
+ &lt;description&gt;Timer generates an Interrupt when it underflows&lt;/description&gt;
+ &lt;value&gt;1&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;enumeratedValue&gt;
+ &lt;name&gt;Overflow&lt;/name&gt;
+ &lt;description&gt;Timer generates an Interrupt when it overflows&lt;/description&gt;
+ &lt;value&gt;2&lt;/value&gt;
+ &lt;/enumeratedValue&gt;
+ &lt;/enumeratedValues&gt;
+ &lt;/field&gt;
+ &lt;/fields&gt;
+ &lt;/register&gt;
+
+ &lt;!-- COUNT: Counter Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;COUNT&lt;/name&gt;
+ &lt;description&gt;The Counter Register reflects the actual Value of the Timer/Counter&lt;/description&gt;
+ &lt;addressOffset&gt;0x20&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt;
+ &lt;/register&gt;
+
+ &lt;!-- MATCH: Match Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;MATCH&lt;/name&gt;
+ &lt;description&gt;The Match Register stores the compare Value for the MATCH condition&lt;/description&gt;
+ &lt;addressOffset&gt;0x24&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt;
+ &lt;/register&gt;
+
+ &lt;!-- PRESCALE: Prescale Read Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;PRESCALE_RD&lt;/name&gt;
+ &lt;description&gt;The Prescale Register stores the Value for the prescaler. The cont event gets divided by this value&lt;/description&gt;
+ &lt;addressOffset&gt;0x28&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-only&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt;
+ &lt;/register&gt;
+
+ &lt;!-- PRESCALE: Prescale Write Register --&gt;
+ &lt;register&gt;
+ &lt;name&gt;PRESCALE_WR&lt;/name&gt;
+ &lt;description&gt;The Prescale Register stores the Value for the prescaler. The cont event gets divided by this value&lt;/description&gt;
+ &lt;addressOffset&gt;0x28&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;write-only&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt;
+ &lt;/register&gt;
+
+
+ &lt;!-- RELOAD: Array of Reload Register with 4 elements--&gt;
+ &lt;register&gt;
+ &lt;dim&gt;4&lt;/dim&gt;
+ &lt;dimIncrement&gt;4&lt;/dimIncrement&gt;
+ &lt;dimIndex&gt;0,1,2,3&lt;/dimIndex&gt;
+ &lt;name&gt;RELOAD[%s]&lt;/name&gt;
+ &lt;description&gt;The Reload Register stores the Value the COUNT Register gets reloaded on a when a condition was met.&lt;/description&gt;
+ &lt;addressOffset&gt;0x50&lt;/addressOffset&gt;
+ &lt;size&gt;32&lt;/size&gt;
+ &lt;access&gt;read-write&lt;/access&gt;
+ &lt;resetValue&gt;0x00000000&lt;/resetValue&gt;
+ &lt;resetMask&gt;0xFFFFFFFF&lt;/resetMask&gt;
+ &lt;/register&gt;
+ &lt;/registers&gt;
+ &lt;/peripheral&gt;
+
+ &lt;!-- Timer 1 --&gt;
+ &lt;peripheral derivedFrom="TIMER0"&gt;
+ &lt;name&gt;TIMER1&lt;/name&gt;
+ &lt;baseAddress&gt;0x40010100&lt;/baseAddress&gt;
+ &lt;interrupt&gt;
+ &lt;name&gt;TIMER1&lt;/name&gt;
+ &lt;value&gt;4&lt;/value&gt;
+ &lt;/interrupt&gt;
+ &lt;/peripheral&gt;
+
+ &lt;!-- Timer 2 --&gt;
+ &lt;peripheral derivedFrom="TIMER0"&gt;
+ &lt;name&gt;TIMER2&lt;/name&gt;
+ &lt;baseAddress&gt;0x40010200&lt;/baseAddress&gt;
+ &lt;interrupt&gt;
+ &lt;name&gt;TIMER2&lt;/name&gt;
+ &lt;value&gt;6&lt;/value&gt;
+ &lt;/interrupt&gt;
+ &lt;/peripheral&gt;
+ &lt;/peripherals&gt;
+&lt;/device&gt;
+</pre> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd__outline_pg.html b/CMSIS/Documentation/SVD/html/svd__outline_pg.html
new file mode 100644
index 0000000..a5bdf6e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd__outline_pg.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVD File Format</title>
+<title>CMSIS-SVD: SVD File Format</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd__outline_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">SVD File Format </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>The CMSIS-SVD format is based on XML and was influenced by IP-XACT. Due to the much wider scope and complexity of IP-XACT, it was decided to specify a separate format focused and tailored towards the description of the programmer's view of a device.</p>
+<p><b>CMSIS-SVD XML Hierarchy</b></p>
+<div class="image">
+<img src="CMSIS_SVD_Schema_Gen.png" alt="CMSIS_SVD_Schema_Gen.png"/>
+<div class="caption">
+CMSIS-SVD Hierarchy Levels</div></div>
+<p> One CMSIS-SVD file contains the description of a single device. A device consists of a processor and at least one peripheral. Each peripheral contains at least one register. A register may consist of one or more fields. The range of values for a field may be further described with enumerated values.</p>
+<ul>
+<li><b>Device Level:</b> The top level of a System View Description is the device. On this level, information is captured that is specific to the device as a whole. For example, the device name, description, or version. The minimal addressable unit as well as the bit-width of the data bus are required by the debugger to perform the correct target accesses.<br/>
+ <br/>
+Default values for register attributes like register size, reset value, and access permissions can be set for the whole device on this level and are implicitly inherited by the lower levels of the description. If however specified on a lower level, the default setting from a higher level will get overruled.</li>
+</ul>
+<ul>
+<li><b>Peripherals Level:</b> A peripheral is a named collection of registers. A peripheral is mapped to a defined <em>base address</em> within the device's address space. A peripheral allocates one or more exclusive address blocks relative to its base address, such that all described registers fit into the allocated address blocks. Allocated addresses without an associated register description are automatically considered reserved. The peripheral can be assigned to a group of peripherals and may be associated with one or more interrupts.</li>
+</ul>
+<ul>
+<li><b>Registers Level:</b> A register is a named, programmable resource that belongs to a peripheral. Registers are mapped to a defined address in the address space of the device. An address is specified relative to the peripheral base address. The description of a register documents the purpose and function of the resource. A debugger requires information about the permitted access to a resource as well as side effects triggered by read and write accesses respectively.</li>
+</ul>
+<ul>
+<li><b>Fields Level:</b> Registers may be partitioned into chunks of bits of distinct functionality. A chunk is referred to as <em>field</em>. The field names within a single register must be unique. Only architecturally defined fields shall be described. Any bits not being explicitly described are treated as reserved. They are not displayed in the System Viewer and are padded in the bit fields of the device header file. The case-insensitive field named <b>"reserved"</b> is treated as a keyword and each field with this name is ignored.</li>
+</ul>
+<ul>
+<li><b>Enumerated Values Level:</b> An enumeration maps an unsigned integer constant to a descriptive identifier and, optionally, to a description string. Enumerations are used in C to enhance the readability of source code. Similarly, it can be used by debuggers to provide more instructive information to the programmer, avoiding a lookup in the device documentation.</li>
+</ul>
+<ul>
+<li><b>Vendor Extensions:</b> The CMSIS-SVD format includes a section named <em>vendorExtensions</em> positioned after the closing tag <em>peripherals</em>. This allows silicon vendors and tool partners to innovate and expand the description beyond the current specification.</li>
+</ul>
+<p><b>Multiple Instantiation</b></p>
+<p>CMSIS-SVD supports the reuse of whole sections of the description. The attribute <em>derivedFrom</em> for the peripheral-, register-, and field-section specifies the source of the section to be copied from. Individual tags can be used to redefine specific elements within a copied section. In case the name of the description source is not unique, the name needs to be qualified hierarchically until the element composite name becomes unique. Hierarchies are separated by a dot. For example, <em>&lt;peripheral name&gt;.&lt;register name&gt;.&lt;field name&gt;</em>.</p>
+<p><b>Array of Elements</b></p>
+<p>A powerfull construct in data structures of the C programming language is the <em>array</em>. An array is a series of data elements of the same type selected via an index. CMSIS-SVD supports arrays of <em>&lt;peripherals&gt;</em>, <em>&lt;cluster&gt;</em> and <em>&lt;register&gt;</em>.</p>
+<p><b>Peripheral Grouping</b></p>
+<p>Peripherals that provide similar functionality (Simple Timer, Complex Timer) can be grouped with the element <em>groupName</em>. All peripherals associated with the same group name are collectively listed under this group in the order they have been specified in the file. Collecting similar or related peripherals into peripheral groups helps structuring the list of peripherals in the debugger.</p>
+<p><b>Descriptions</b></p>
+<p>On each level, the tag <em>description</em> provides verbose information about the respective element. The description field plays an important part in improving the software development productivity as it gives instant access to information that otherwise would need to be looked up in the device documentation. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="index.html">System View Description</a></li>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd__s_v_d_conv_pg.html b/CMSIS/Documentation/SVD/html/svd__s_v_d_conv_pg.html
new file mode 100644
index 0000000..c720345
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd__s_v_d_conv_pg.html
@@ -0,0 +1,236 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVDConv.exe</title>
+<title>CMSIS-SVD: SVDConv.exe</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd__s_v_d_conv_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">SVDConv.exe </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p><b>SVDConv.exe</b> is a command-line utility to validate CMSIS-SVD files and to generate CMSIS-compliant device header files. <b>SVDConv.exe</b> is distributed with the <b>ARM::CMSIS</b> Pack (in the CMSIS\Utilities directory) together with the CMSIS-SVD schema file.</p>
+<p><b>SVDConv.exe</b> performs the following operations:</p>
+<ul>
+<li>Checks the syntactical and structural compliance with the specified CMSIS-SVD format.</li>
+<li>Checks the consistency, correctness, and completeness of the CMSIS-SVD file against the CMSIS-SVD schema file.</li>
+<li>Generates CMSIS-compliant device header files, which can be used for software development.</li>
+</ul>
+<h2>Operation</h2>
+<p><b>SVDConv.exe</b> is invoked form the command line. The general command format is: </p>
+<div class="fragment"><div class="line">SVDConv.exe &lt;SVD_file&gt; &lt;options&gt;</div>
+</div><!-- fragment --><p>&#160;</p>
+<table class="cmtable" summary="SVDConv Args">
+<tr>
+<th>&lt;options&gt; </th><th>Short Name </th><th>Description </th></tr>
+<tr>
+<td><em>none</em> </td><td>Validation </td><td>Perform a validation check of the SVD file. Errors and warnings are printed on screen. </td></tr>
+<tr>
+<td>-b </td><td>Log File </td><td>Specify the log file name for writing messages. Default: screen. </td></tr>
+<tr>
+<td>-o </td><td>Output Path </td><td>Specify an output path for the generated device header file or log file. Default: current directory. </td></tr>
+<tr>
+<td>&mdash;generate=header </td><td>Generate Device Header File </td><td>Generates the device header file. The name of the generated file is derived from the value of the tag &lt;device&lt;name&gt; in the CMSIS-SVD file. Refer to <a class="el" href="group__svd__xml__device__gr.html">Device Level</a>. </td></tr>
+<tr>
+<td>&mdash;fields=macro </td><td>Bit-field Macros </td><td>Generates position and mask C-Macros for each field description contained in the CMSIS-SVD input file. Must be used in combination with <em>&mdash;generate=header</em>. </td></tr>
+<tr>
+<td>&mdash;fields=struct </td><td>Bit-field Structs </td><td>Generates bit fields for each field description contained in the CMSIS-SVD input file. Must be used in combination with <em>&mdash;generate=header</em>. </td></tr>
+<tr>
+<td>&mdash;fields=struct-ansic </td><td>ANSI Bit-field Structs </td><td>Generates MISRA-compliant structures for each bitfield. The generated code <b>is not CMSIS-compliant</b>! Must be used in combination with <em>&mdash;generate=header</em>. </td></tr>
+</table>
+<h2>Return Codes</h2>
+<p><b>SVDConv.exe</b> returns the following codes: <br/>
+ </p>
+<table class="doxtable">
+<tr>
+<th align="center">Code </th><th align="left">Description </th><th align="left">Action</th></tr>
+<tr>
+<td align="center">0 </td><td align="left">OK </td><td align="left">No action required. Validation and conversion performed without errors. </td></tr>
+<tr>
+<td align="center">1 </td><td align="left">WARNINGS </td><td align="left">Warnings should be checked an possibly removed. The header file is created and could be used. </td></tr>
+<tr>
+<td align="center">2 </td><td align="left">ERRORS </td><td align="left">Errors in the SVD description file. Important elements are missing and must be corrected. </td></tr>
+<tr>
+<td align="center">3 </td><td align="left">Error in command line </td><td align="left">Check and correct the command line arguments. </td></tr>
+</table>
+<p><b>Examples</b> <br/>
+</p>
+<ol type="1">
+<li>Retrieve help information on screen. <div class="fragment"><div class="line">SVDConv.exe </div>
+</div><!-- fragment --> <br/>
+</li>
+<li>Perform a consistency check by passing only the SVD file name. Errors and warnings are printed on screen. <div class="fragment"><div class="line">SVDConv.exe ARM_Example.svd </div>
+</div><!-- fragment --> <br/>
+ The result is printed on screen: <pre class="fragment"> MVCM3110.svd(1688) : info
+ &lt;description&gt; missing for value '2 : MODE2'
+ MVCM3110.svd(1692) : info
+ &lt;description&gt; missing for value '3 : MODE3'
+ MVCM3110.svd(1696) : info
+ &lt;description&gt; missing for value '4 : MODE4'
+ Area of improvements:
+ * Description contains 267 &lt;fields&gt; defined without associated &lt;enumeratedValues&gt;
+ Found 0 Errors and 1 Warnings
+ Return Code: 1 (WARNINGS)</pre> <br/>
+</li>
+<li>Generate the header file. Performs a consistency check. Errors and warnings are printed on screen. <div class="fragment"><div class="line">SVDConv.exe ARM_Example.svd --generate=header</div>
+</div><!-- fragment --> <br/>
+ Code snippet from the generated header file showing the structure for <b>TIMER0</b>. <br/>
+ <div class="fragment"><div class="line"><span class="comment">/* ================ TIMER0 ================ */</span></div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>{ </div>
+<div class="line"> __IO uint32_t CR; </div>
+<div class="line"> __IO uint16_t SR; </div>
+<div class="line"> __I uint16_t RESERVED0[5];</div>
+<div class="line"> __IO uint16_t INT; </div>
+<div class="line"> __I uint16_t RESERVED1[7];</div>
+<div class="line"> __IO uint32_t COUNT; </div>
+<div class="line"> __IO uint32_t MATCH; </div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __O uint32_t PRESCALE_WR; </div>
+<div class="line"> __I uint32_t PRESCALE_RD; </div>
+<div class="line"> };</div>
+<div class="line"> __I uint32_t RESERVED2[9];</div>
+<div class="line"> __IO uint32_t RELOAD[4]; </div>
+<div class="line">} TIMER0_Type;</div>
+</div><!-- fragment --> <br/>
+</li>
+<li>Generate the header file containing bit fields. Performs a consistency check. Errors and warnings are printed on screen. <div class="fragment"><div class="line">SVDConv.exe ARM_Example.svd --generate=header --fields=<span class="keyword">struct</span></div>
+</div><!-- fragment --> <br/>
+ Code snippet from the generated header file showing the structure for <b>TIMER0</b>. <br/>
+ Compare to the code snippet above. <div class="fragment"><div class="line"><span class="comment">/* ================ TIMER0 ================ */</span></div>
+<div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>{ </div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __IO uint32_t CR; </div>
+<div class="line"> <span class="keyword">struct </span>{</div>
+<div class="line"> __IO uint32_t EN : 1; </div>
+<div class="line"> __O uint32_t RST : 1; </div>
+<div class="line"> __IO uint32_t CNT : 2; </div>
+<div class="line"> __IO uint32_t MODE : 3; </div>
+<div class="line"> __IO uint32_t PSC : 1; </div>
+<div class="line"> __IO uint32_t CNTSRC : 4; </div>
+<div class="line"> __IO uint32_t CAPSRC : 4; </div>
+<div class="line"> __IO uint32_t CAPEDGE : 2; </div>
+<div class="line"> uint32_t : 2;</div>
+<div class="line"> __IO uint32_t TRGEXT : 2; </div>
+<div class="line"> uint32_t : 2;</div>
+<div class="line"> __IO uint32_t RELOAD : 2; </div>
+<div class="line"> __IO uint32_t IDR : 2; </div>
+<div class="line"> uint32_t : 3;</div>
+<div class="line"> __IO uint32_t S : 1; </div>
+<div class="line"> } CR_b; </div>
+<div class="line"> };</div>
+<div class="line"> </div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __IO uint16_t SR; </div>
+<div class="line"> <span class="keyword">struct </span>{</div>
+<div class="line"> __I uint16_t RUN : 1; </div>
+<div class="line"> uint16_t : 7;</div>
+<div class="line"> __IO uint16_t MATCH : 1; </div>
+<div class="line"> __IO uint16_t UN : 1; </div>
+<div class="line"> __IO uint16_t OV : 1; </div>
+<div class="line"> uint16_t : 1;</div>
+<div class="line"> __I uint16_t RST : 1; </div>
+<div class="line"> uint16_t : 1;</div>
+<div class="line"> __I uint16_t RELOAD : 2; </div>
+<div class="line"> } SR_b; </div>
+<div class="line"> };</div>
+<div class="line"> __I uint16_t RESERVED0[5];</div>
+<div class="line"> </div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __IO uint16_t INT; </div>
+<div class="line"> <span class="keyword">struct </span>{</div>
+<div class="line"> __IO uint16_t EN : 1; </div>
+<div class="line"> uint16_t : 3;</div>
+<div class="line"> __IO uint16_t MODE : 3; </div>
+<div class="line"> } INT_b; </div>
+<div class="line"> };</div>
+<div class="line"> __I uint16_t RESERVED1[7];</div>
+<div class="line"> __IO uint32_t COUNT; </div>
+<div class="line"> __IO uint32_t MATCH; </div>
+<div class="line"> <span class="keyword">union </span>{</div>
+<div class="line"> __O uint32_t PRESCALE_WR; </div>
+<div class="line"> __I uint32_t PRESCALE_RD; </div>
+<div class="line"> };</div>
+<div class="line"> __I uint32_t RESERVED2[9];</div>
+<div class="line"> __IO uint32_t RELOAD[4]; </div>
+<div class="line">} TIMER0_Type;</div>
+</div><!-- fragment --> </li>
+</ol>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd_revision_history.html b/CMSIS/Documentation/SVD/html/svd_revision_history.html
new file mode 100644
index 0000000..203dd3d
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_revision_history.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Revision History of CMSIS-SVD</title>
+<title>CMSIS-SVD: Revision History of CMSIS-SVD</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd_revision_history.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Revision History of CMSIS-SVD </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><table class="doxtable">
+<tr>
+<th align="left">Version </th><th align="left">Description</th></tr>
+<tr>
+<td align="left">V1.3.1 </td><td align="left">Added protection element - Fixed peripheral name type to allow array format - Added Cortex A class CPUs to enumeration </td></tr>
+<tr>
+<td align="left">V1.3 </td><td align="left">Added array of peripherals and nesting of clusters </td></tr>
+<tr>
+<td align="left">V1.2 </td><td align="left">Added optional tags for Cortex-M7 in <a class="el" href="group__cpu_section__gr.html">CPU Section</a> </td></tr>
+<tr>
+<td align="left">V1.1 </td><td align="left">Added extensions as documented under <a class="el" href="group__svd___format__1__1__gr.html">SVD Extensions</a> </td></tr>
+<tr>
+<td align="left">V1.0 </td><td align="left">Initial revision </td></tr>
+</table>
+<p>&#160;</p>
+<hr/>
+ </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd_validate_file_pg.html b/CMSIS/Documentation/SVD/html/svd_validate_file_pg.html
new file mode 100644
index 0000000..a89a21f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_validate_file_pg.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>SVD File Validation and Usage</title>
+<title>CMSIS-SVD: SVD File Validation and Usage</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd_validate_file_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">SVD File Validation and Usage </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>The description quality is key to success of the CMSIS-SVD format. Aspects of quality are:</p>
+<ul>
+<li>Syntactical and structural compliance with the specified CMSIS-SVD format.</li>
+<li>Consistency and correctness.</li>
+<li>Completeness.</li>
+<li>Level of detail.</li>
+</ul>
+<p>Automated validations are done on two levels:</p>
+<ol type="1">
+<li><b>The CMSIS-SVD Schema File</b>: The schema file specifies the syntax and structure of an XML-based format. XML tools use the schema file for checking the syntactical and structural correctness of an XML file that claims compliance with a certain format. The schema file <em>CMSIS-SVD.xsd</em> can be found in the folder <b>.\CMSIS\Utilities</b> of the <b>ARM::CMSIS</b> Pack. <br/>
+<br/>
+</li>
+<li><b>SVD Conversion Utility:</b> ARM provides the conversion utility <a class="el" href="svd__s_v_d_conv_pg.html">SVDConv.exe</a> to check the semantics and consistency of the data contained in a CMSIS-SVD file. <b>SVDConv.exe</b> is included in the CMSIS distribution.</li>
+</ol>
+<p>CMSIS-SVD files can be used to generate:</p>
+<ol type="1">
+<li>CMSIS-compliant device header files from a CMSIS-SVD description. Refer to the conversion tool <a class="el" href="svd__s_v_d_conv_pg.html">SVDConv.exe</a> for details. CMSIS device header files are developed and maintained by the silicon vendors. Therefore, the expectation is that this conversion is only of interest to these parties.</li>
+<li>Debug dialogs that communicate with a debugger. See below.</li>
+</ol>
+<p><b>System Views</b> <br/>
+<br/>
+ A number of tool vendors support the CMSIS-SVD format with their products. Refer to the tools documentation to find out how to use CMSIS-SVD descriptions with the debugger of your choice. You can download the latest versions of available CMSIS-SVD files from the <a class="el" href="svd_web_public_pg.html">Public Download Area</a> on the ARM web. <br/>
+ <br/>
+ <b>Generated Debug Dialog:</b> </p>
+<div class="image">
+<img src="SystemViewer_Generated.png" alt="SystemViewer_Generated.png"/>
+<div class="caption">
+uVision Debug Window generated from ARM_Example.svd</div></div>
+<p><br/>
+ </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd_web_pg.html b/CMSIS/Documentation/SVD/html/svd_web_pg.html
new file mode 100644
index 0000000..6139756
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_web_pg.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>CMSIS-SVD Web Interface User Guide</title>
+<title>CMSIS-SVD: CMSIS-SVD Web Interface User Guide</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd_web_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">CMSIS-SVD Web Interface User Guide </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>The CMSIS Web Interface provides functionalities for downloading and managing the CMSIS-SVD files.</p>
+<ul>
+<li><a class="el" href="svd_web_public_pg.html">Public Download Area</a> - Users can download CMSIS-SVD files.</li>
+<li><a class="el" href="svd_web_restricted_pg.html">Restricted Management Area</a> - Silicon Vendors can manage their devices and associated CMSIS-SVD files.</li>
+</ul>
+<p>In any case, the ARM web page requires login credentials to grant access to the content.</p>
+<ul>
+<li>Registration starts here: <a href="https://login.arm.com/register.php" target="_blank"><b>ARM Registration</b></a>. </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="index.html">System View Description</a></li>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd_web_pg.js b/CMSIS/Documentation/SVD/html/svd_web_pg.js
new file mode 100644
index 0000000..1d735f3
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_web_pg.js
@@ -0,0 +1,15 @@
+var svd_web_pg =
+[
+ [ "Public Download Area", "svd_web_public_pg.html", [
+ [ "Logging in", "svd_web_public_pg.html#login_downl_sec", null ],
+ [ "Opening the CMSIS-SVD Download page", "svd_web_public_pg.html#open_downl_sec", null ],
+ [ "Accepting the Silicon Vendor's License terms", "svd_web_public_pg.html#accept_EULA_sec", null ],
+ [ "Downloading CMSIS-SVD files", "svd_web_public_pg.html#downl_downl_sec", null ]
+ ] ],
+ [ "Restricted Management Area", "svd_web_restricted_pg.html", [
+ [ "Signing the agreement", "svd_web_restricted_pg.html#sign_agreement_sec", null ],
+ [ "Logging in", "svd_web_restricted_pg.html#login_mgmnt_dd_sec", null ],
+ [ "Opening the CMSIS-SVD Device Database page", "svd_web_restricted_pg.html#open_mgmnt_ss_sec", null ],
+ [ "Managing the Device Database", "svd_web_restricted_pg.html#manage_dd_entries_sec", null ]
+ ] ]
+]; \ No newline at end of file
diff --git a/CMSIS/Documentation/SVD/html/svd_web_public_pg.html b/CMSIS/Documentation/SVD/html/svd_web_public_pg.html
new file mode 100644
index 0000000..3989ccd
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_web_public_pg.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Public Download Area</title>
+<title>CMSIS-SVD: Public Download Area</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd_web_public_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Public Download Area </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Public access to the Device Database is provided from <a href="http://cmsis.arm.com" target="_blank">cmsis.arm.com</a>. For the public download of the CMSIS-SVD files of published devices it is mandatory to:</p>
+<ul>
+<li>Be logged in on the ARM web site.</li>
+<li>Have accepted a silicon vendor specific End Users License Agreement (EULA).</li>
+</ul>
+<h1><a class="anchor" id="login_downl_sec"></a>
+Logging in</h1>
+<ul>
+<li>Use your credentials to <a href="https://login.arm.com/login.php" target="_blank"><b>Login</b></a>.</li>
+</ul>
+<h1><a class="anchor" id="open_downl_sec"></a>
+Opening the CMSIS-SVD Download page</h1>
+<div class="image">
+<img src="Access_SVD_Vendor.png" alt="Access_SVD_Vendor.png"/>
+<div class="caption">
+Access Silicon Vendor Device Database</div></div>
+<ul>
+<li>Access the CMSIS webpage at <a href="http://cmsis.arm.com" target="_blank"><b>cmsis.arm.com</b></a>.</li>
+<li>Select the "CMSIS-SVD" tab.</li>
+<li>Click on a Silicon Vendor's name for getting redirected to the respective vendor device database.</li>
+</ul>
+<h1><a class="anchor" id="accept_EULA_sec"></a>
+Accepting the Silicon Vendor's License terms</h1>
+<p>On your first visit to a vendor database page you will be asked to review and accept the vendor-specific "End User License Agreement" (EULA). If you do not accept the EULA, you will see the list of devices and associated CMSIS-SVD files, but you will not be able to download any of the files. Note, in case the EULA has changed, you will be asked to review and accept the EULA again.</p>
+<h1><a class="anchor" id="downl_downl_sec"></a>
+Downloading CMSIS-SVD files</h1>
+<div class="image">
+<img src="CMSIS_SVD_Vendor_DD.png" alt="CMSIS_SVD_Vendor_DD.png"/>
+<div class="caption">
+Download Device Database Files</div></div>
+<ul>
+<li>Select one, multiple, or all devices from the table.</li>
+<li>Click the "download" button.</li>
+</ul>
+<p>You will be asked to open or save the zip archive file containing the files. If you have selected multiple devices, the file <em>contents.txt</em> included in the archive will list the mapping between devices and CMSIS-SVD files. Multiple devices can share the same CMSIS-SVD file. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="index.html">System View Description</a></li><li class="navelem"><a class="el" href="svd_web_pg.html">CMSIS-SVD Web Interface User Guide</a></li>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/svd_web_restricted_pg.html b/CMSIS/Documentation/SVD/html/svd_web_restricted_pg.html
new file mode 100644
index 0000000..a8ca00e
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/svd_web_restricted_pg.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>Restricted Management Area</title>
+<title>CMSIS-SVD: Restricted Management Area</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="cmsis.css" rel="stylesheet" type="text/css" />
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="printComponentTabs.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="stylsheetf" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 46px;">
+ <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">CMSIS-SVD
+ &#160;<span id="projectnumber">Version 1.3.1</span>
+ </div>
+ <div id="projectbrief">CMSIS System View Description</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<div id="CMSISnav" class="tabs1">
+ <ul class="tablist">
+ <script type="text/javascript">
+ <!--
+ writeComponentTabs.call(this);
+ //-->
+ </script>
+ </ul>
+</div>
+<!-- Generated by Doxygen 1.8.2 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
+ <li><a href="modules.html"><span>Reference</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('svd_web_restricted_pg.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">Restricted Management Area </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Access to the CMSIS-SVD device database management system is restricted to:</p>
+<ul>
+<li>Silicon Vendors.</li>
+<li>Companies who have signed an agreement with ARM about using the CMSIS-SVD device database.</li>
+<li>ARM Cortex-M based microcontroller devices.</li>
+</ul>
+<h1><a class="anchor" id="sign_agreement_sec"></a>
+Signing the agreement</h1>
+<ul>
+<li>The Silicon Vendor contacts the ARM sales representative or sends an email to <a href="#" onclick="location.href='mai'+'lto:'+'cms'+'is'+'@ar'+'m.'+'com'; return false;">cmsis<span style="display: none;">.nosp@m.</span>@arm<span style="display: none;">.nosp@m.</span>.com</a> requesting to contribute to the CMSIS-SVD Database.</li>
+<li>An agreement needs to be signed between the Silicon Vendor and ARM defining the terms of use and specifying the representatives authorized for managing the files and devices.</li>
+<li>The login e-mail addresses for www.arm.com get listed in the contract. The representatives need to ensure that their login already exists.</li>
+<li>As part of exercising the contract the representatives will be given CMSIS-SVD Upload permissions in the system.</li>
+</ul>
+<h1><a class="anchor" id="login_mgmnt_dd_sec"></a>
+Logging in</h1>
+<ul>
+<li>Use your credentials to <a href="https://login.arm.com/login.php" target="_blank"><b>Login</b></a>.</li>
+</ul>
+<h1><a class="anchor" id="open_mgmnt_ss_sec"></a>
+Opening the CMSIS-SVD Device Database page</h1>
+<div class="image">
+<img src="Access_SVD_DD_Manage.png" alt="Access_SVD_DD_Manage.png"/>
+<div class="caption">
+Management Access to Device Database</div></div>
+<ul>
+<li>Access the CMSIS web page at <a href="http://cmsis.arm.com" target="_blank"><b>cmsis.arm.com</b></a>.</li>
+<li>Click the button "Device Database" <dl class="section note"><dt>Note</dt><dd>If you do not see this button, you are either not logged in or you have not been granted CMSIS-SVD Upload permissions.</dd></dl>
+</li>
+</ul>
+<h1><a class="anchor" id="manage_dd_entries_sec"></a>
+Managing the Device Database</h1>
+<p>The database lists microcontroller devices and their associated CMSIS-SVD files and, optionally, resource files. Multiple devices may share the same CMSIS-SVD and the optional resource file. For this reason, files and devices are managed separately. Files need to be uploaded and have to pass the check against the CMSIS-SVD Schema as well as the plausibility and consistency check by the SVDConv utility before they can be used to define a device. The SVDConv checking is scheduled. Therefore, it can take up to 15 minutes before the file status gets updated.</p>
+<div class="image">
+<img src="Manage_SVD_DD.png" alt="Manage_SVD_DD.png"/>
+<div class="caption">
+Manage Device Database Entries</div></div>
+<ul>
+<li>a) Manage Files<ul>
+<li>Add file: Select the CMSIS-SVD file and start the upload process. The schema check will run immediately after the file upload is complete. If the check fails the file will not be stored and you are asked to upload a corrected file. The SVDConv check for this file is automatically scheduled and will take place within 15 minutes. The status of the file will be updated and reports errors and warnings in a text file that can be downloaded (click on error/warning respectively).</li>
+<li>Delete file: Files can only be deleted if they are not associated with a device otherwise the system will list the devices the file is still associated with.</li>
+<li>Replace file: Replace files allows you to update a file without the need to edit the device definition.</li>
+</ul>
+</li>
+</ul>
+<ul>
+<li>b) Manage Devices <br/>
+ New devices can be added or existing devices can be edited. A device defines:<ul>
+<li>Name of device</li>
+<li>Filename CMSIS-SVD</li>
+<li>Filename Resource zip archive</li>
+<li>Reviewer List</li>
+<li>Publishing Date <br/>
+ A checkbox is in front of each device to enable and disable a device. A disabled device will not show in the vendor-specific download area.</li>
+</ul>
+</li>
+</ul>
+<ul>
+<li>c) Review Devices <br/>
+ Ask you reviewer for the login email address being used for the login on the ARM web. Add this email address into the field, one email address per line. You can add some text to the e-mail body however the email template already contains all relevant information like the device name as well as a link to the device database. </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="index.html">System View Description</a></li><li class="navelem"><a class="el" href="svd_web_pg.html">CMSIS-SVD Web Interface User Guide</a></li>
+ <li class="footer">Generated on Tue Oct 27 2015 14:35:46 for CMSIS-SVD by ARM Ltd. All rights reserved.
+ <!--
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.2
+ -->
+ </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/CMSIS/Documentation/SVD/html/sync_off.png b/CMSIS/Documentation/SVD/html/sync_off.png
new file mode 100644
index 0000000..3b443fc
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/sync_off.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/sync_on.png b/CMSIS/Documentation/SVD/html/sync_on.png
new file mode 100644
index 0000000..e08320f
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/sync_on.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tab_a.png b/CMSIS/Documentation/SVD/html/tab_a.png
new file mode 100644
index 0000000..3b725c4
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tab_a.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tab_b.png b/CMSIS/Documentation/SVD/html/tab_b.png
new file mode 100644
index 0000000..5f6601a
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tab_b.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tab_h.png b/CMSIS/Documentation/SVD/html/tab_h.png
new file mode 100644
index 0000000..fd5cb70
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tab_h.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tab_s.png b/CMSIS/Documentation/SVD/html/tab_s.png
new file mode 100644
index 0000000..ab478c9
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tab_s.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tab_topnav.png b/CMSIS/Documentation/SVD/html/tab_topnav.png
new file mode 100644
index 0000000..b257b77
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tab_topnav.png
Binary files differ
diff --git a/CMSIS/Documentation/SVD/html/tabs.css b/CMSIS/Documentation/SVD/html/tabs.css
new file mode 100644
index 0000000..ffbab50
--- /dev/null
+++ b/CMSIS/Documentation/SVD/html/tabs.css
@@ -0,0 +1,71 @@
+.tabs, .tabs1, .tabs2, .tabs3 {
+ background-image: url('tab_b.png');
+ width: 100%;
+ z-index: 101;
+ font-size: 10px;
+}
+
+.tabs1 {
+ background-image: url('tab_topnav.png');
+ font-size: 12px;
+}
+
+.tabs2 {
+ font-size: 10px;
+}
+.tabs3 {
+ font-size: 9px;
+}
+
+.tablist {
+ margin: 0;
+ padding: 0;
+ display: table;
+ line-height: 24px;
+}
+
+.tablist li {
+ float: left;
+ display: table-cell;
+ background-image: url('tab_b.png');
+ list-style: none;
+}
+
+.tabs1 .tablist li {
+ float: left;
+ display: table-cell;
+ background-image: url('tab_topnav.png');
+ list-style: none;
+}
+
+.tablist a {
+ display: block;
+ padding: 0 20px;
+ font-weight: bold;
+ background-image:url('tab_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color: #283A5D;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+ outline: none;
+}
+
+.tabs3 .tablist a {
+ padding: 0 10px;
+}
+
+.tablist a:hover {
+ background-image: url('tab_h.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+ text-decoration: none;
+}
+
+.tablist li.current a {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}