diff --git a/BUILD.gn b/BUILD.gn
new file mode 100755
index 0000000..3dac98c
--- /dev/null
+++ b/BUILD.gn
@@ -0,0 +1,49 @@
+# Copyright (c) Huawei Technologies Co., Ltd. 2020-2020. All rights reserved.
+
+import("//build/lite/config/component/lite_component.gni")
+
+config("json_c_config") {
+ include_dirs = [ "//third_party/JSON-C/json-c" ]
+}
+
+json_c_sources = [
+ "json-c/arraylist.c",
+ "json-c/debug.c",
+ "json-c/json_c_version.c",
+ "json-c/json_object.c",
+ "json-c/json_object_iterator.c",
+ "json-c/json_pointer.c",
+ "json-c/json_tokener.c",
+ "json-c/json_util.c",
+ "json-c/json_visit.c",
+ "json-c/linkhash.c",
+ "json-c/printbuf.c",
+ "json-c/random_seed.c",
+ "json-c/strerror_override.c",
+]
+
+static_library("json-c_static") {
+ sources = json_c_sources
+ output_name = "json-c"
+ public_configs = [ ":json_c_config" ]
+ defines = [
+ "HAVE_CONFIG_H",
+ "_GNU_SOURCE",
+ "_REENTRANT",
+ ]
+ cflags_c = [
+ "-Wall",
+ "-Os",
+ "-g",
+ "-Wcast-qual",
+ "-Wextra",
+ "-Wno-unused-parameter",
+ "-Wno-error=deprecated-declarations",
+ "-ffunction-sections",
+ "-fdata-sections",
+ ]
+ ldflags = [
+ "-Wl",
+ "--gc-sections",
+ ]
+}
diff --git a/README.OpenSource b/README.OpenSource
new file mode 100755
index 0000000..d7d7eab
--- /dev/null
+++ b/README.OpenSource
@@ -0,0 +1,11 @@
+[
+ {
+ "Name" : "JSON-C",
+ "License" : "MIT License",
+ "License File" : "json-c/COPYING",
+ "Version Number" : "0.13.1-20180305",
+ "Owner" : "jiangxiaofeng8@huawei.com",
+ "Upstream URL" : "https://github.com/json-c/json-c",
+ "Description" : "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects."
+ }
+]
diff --git a/README.en.md b/README.en.md
deleted file mode 100644
index 910e515..0000000
--- a/README.en.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# third_party_JSON-C
-
-#### Description
-{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**}
-
-#### Software Architecture
-Software architecture description
-
-#### Installation
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### Instructions
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### Contribution
-
-1. Fork the repository
-2. Create Feat_xxx branch
-3. Commit your code
-4. Create Pull Request
-
-
-#### Gitee Feature
-
-1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
-2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
-3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
-4. The most valuable open source project [GVP](https://gitee.com/gvp)
-5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
-6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
diff --git a/README.md b/README.md
deleted file mode 100644
index ede83ff..0000000
--- a/README.md
+++ /dev/null
@@ -1,39 +0,0 @@
-# third_party_JSON-C
-
-#### 介绍
-{**以下是 Gitee 平台说明,您可以替换此简介**
-Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台
-无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)}
-
-#### 软件架构
-软件架构说明
-
-
-#### 安装教程
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### 使用说明
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### 参与贡献
-
-1. Fork 本仓库
-2. 新建 Feat_xxx 分支
-3. 提交代码
-4. 新建 Pull Request
-
-
-#### 特技
-
-1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
-2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
-3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
-4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
-5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
-6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
diff --git a/json-c/.editorconfig b/json-c/.editorconfig
new file mode 100755
index 0000000..7a625d1
--- /dev/null
+++ b/json-c/.editorconfig
@@ -0,0 +1,15 @@
+# EditorConfig
+# http://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+# LF end-of-line, insert an empty new line and UTF-8
+[*]
+end_of_line = lf
+insert_final_newline = true
+charset = utf-8
+
+# Tab indentation
+[makefile,Makefile]
+indent_style = tab
diff --git a/json-c/.gitignore b/json-c/.gitignore
new file mode 100755
index 0000000..6347caa
--- /dev/null
+++ b/json-c/.gitignore
@@ -0,0 +1,111 @@
+# Temp files
+*~
+*.swp
+*.bak
+*.backup
+\#*
+.\#*
+*\#
+*.sav
+*.save
+*.autosav
+*.autosave
+
+# Tests
+/test-driver
+/tests/Makefile
+/tests/Makefile.in
+/tests/test1
+/tests/test1Formatted
+/tests/test2
+/tests/test2Formatted
+/tests/test4
+/tests/testReplaceExisting
+/tests/testSubDir
+/tests/test_cast
+/tests/test_charcase
+/tests/test_compare
+/tests/test_deep_copy
+/tests/test_double_serializer
+/tests/test_float
+/tests/test_int_add
+/tests/test_json_pointer
+/tests/test_locale
+/tests/test_null
+/tests/test_parse
+/tests/test_parse_int64
+/tests/test_printbuf
+/tests/test_set_serializer
+/tests/test_set_value
+/tests/test_util_file
+/tests/test_visit
+/tests/*.vg.out
+/tests/*.log
+/tests/*.trs
+
+# Generated folders
+/Debug
+/Release
+/*/Debug
+/*/Release
+
+# Generated binaries
+*.lo
+*.o
+/libjson-c.la
+/libjson.la
+
+# Archives
+*.zip
+*.tar.*
+*.tgz
+*.gz
+*.bz2
+*.xz
+*.lz
+*.lzma
+*.7z
+*.dll
+*.deb
+*.rpm
+*.apk
+*.exe
+*.msi
+*.dmg
+*.ipa
+
+.deps/
+.libs/
+/aclocal.m4
+/autoconf-archive
+/autom4te.cache
+/config.guess
+/config.h.in
+/json_config.h
+/compile
+/config.h
+/config.log
+/config.status
+/config.sub
+/configure
+/depcomp
+/doc
+/install-sh
+/json.pc
+/json-c.pc
+/json-c-uninstalled.pc
+/libtool
+/ltmain.sh
+/Makefile
+/Makefile.in
+/missing
+/stamp-h1
+/stamp-h2
+
+# cmake auto-generated files
+/CMakeCache.txt
+/CMakeFiles
+/cmake_install.cmake
+/include
+/libjson-c.a
+/libjson-c.so
diff --git a/json-c/.travis.yml b/json-c/.travis.yml
new file mode 100755
index 0000000..1471983
--- /dev/null
+++ b/json-c/.travis.yml
@@ -0,0 +1,32 @@
+language: cpp
+
+compiler:
+ - gcc
+ - clang
+
+addons:
+ apt:
+ packages:
+ - cppcheck
+
+os:
+ - linux
+ - osx
+
+before_install:
+ - echo $LANG
+ - echo $LC_ALL
+ - set -e
+
+install:
+ - sh autogen.sh
+
+before_script:
+ - ./configure
+
+script:
+ - make
+
+after_success:
+ - make check
+ - if type cppcheck &> /dev/null ; then cppcheck --error-exitcode=1 --quiet *.h *.c tests/ ; fi
diff --git a/json-c/AUTHORS b/json-c/AUTHORS
new file mode 100644
index 0000000..b389989
--- /dev/null
+++ b/json-c/AUTHORS
@@ -0,0 +1,5 @@
+Michael Clark
This program is free software; you can redistribute it and/or modify it under the terms of the MIT License.
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/annotated.html b/json-c/doc/html/annotated.html
new file mode 100755
index 0000000..72c1988
--- /dev/null
+++ b/json-c/doc/html/annotated.html
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
| Carray_list | |
| ▼Cjson_object | |
| Cdata | |
| Cjson_object_iter | |
| Cjson_object_iterator | |
| Cjson_tokener | |
| Cjson_tokener_srec | |
| Clh_entry | |
| Clh_table | |
| Cprintbuf |
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/arraylist_8h.html b/json-c/doc/html/arraylist_8h.html
new file mode 100755
index 0000000..9ecb5d5
--- /dev/null
+++ b/json-c/doc/html/arraylist_8h.html
@@ -0,0 +1,368 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
Internal methods for working with json_type_array objects. Although this is exposed by the json_object_get_array() method, it is not recommended for direct use. +More...
++Data Structures | |
| struct | array_list |
+Macros | |
| #define | ARRAY_LIST_DEFAULT_SIZE 32 |
+Typedefs | |
| typedef void( | array_list_free_fn )(void *data) |
| typedef struct array_list | array_list |
+Functions | |
| struct array_list * | array_list_new (array_list_free_fn *free_fn) |
| void | array_list_free (struct array_list *al) |
| void * | array_list_get_idx (struct array_list *al, size_t i) |
| int | array_list_put_idx (struct array_list *al, size_t i, void *data) |
| int | array_list_add (struct array_list *al, void *data) |
| size_t | array_list_length (struct array_list *al) |
| void | array_list_sort (struct array_list *arr, int(*compar)(const void *, const void *)) |
| void * | array_list_bsearch (const void **key, struct array_list *arr, int(*sort_fn)(const void *, const void *)) |
| int | array_list_del_idx (struct array_list *arr, size_t idx, size_t count) |
Internal methods for working with json_type_array objects. Although this is exposed by the json_object_get_array() method, it is not recommended for direct use.
+| #define ARRAY_LIST_DEFAULT_SIZE 32 | +
| typedef struct array_list array_list | +
| typedef void( array_list_free_fn)(void *data) | +
| int array_list_add | +( | +struct array_list * | +al, | +
| + | + | void * | +data | +
| + | ) | ++ |
| void* array_list_bsearch | +( | +const void ** | +key, | +
| + | + | struct array_list * | +arr, | +
| + | + | int(*)(const void *, const void *) | +sort_fn | +
| + | ) | ++ |
| int array_list_del_idx | +( | +struct array_list * | +arr, | +
| + | + | size_t | +idx, | +
| + | + | size_t | +count | +
| + | ) | ++ |
| void array_list_free | +( | +struct array_list * | +al | ) | ++ |
| void* array_list_get_idx | +( | +struct array_list * | +al, | +
| + | + | size_t | +i | +
| + | ) | ++ |
| size_t array_list_length | +( | +struct array_list * | +al | ) | ++ |
| struct array_list* array_list_new | +( | +array_list_free_fn * | +free_fn | ) | ++ |
| int array_list_put_idx | +( | +struct array_list * | +al, | +
| + | + | size_t | +i, | +
| + | + | void * | +data | +
| + | ) | ++ |
| void array_list_sort | +( | +struct array_list * | +arr, | +
| + | + | int(*)(const void *, const void *) | +compar | +
| + | ) | ++ |
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/bc_s.png b/json-c/doc/html/bc_s.png
new file mode 100755
index 0000000..224b29a
Binary files /dev/null and b/json-c/doc/html/bc_s.png differ
diff --git a/json-c/doc/html/bdwn.png b/json-c/doc/html/bdwn.png
new file mode 100755
index 0000000..940a0b9
Binary files /dev/null and b/json-c/doc/html/bdwn.png differ
diff --git a/json-c/doc/html/bits_8h.html b/json-c/doc/html/bits_8h.html
new file mode 100755
index 0000000..944aa90
--- /dev/null
+++ b/json-c/doc/html/bits_8h.html
@@ -0,0 +1,150 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
Do not use, only contains deprecated defines. +More...
++Macros | |
| #define | hexdigit(x) (((x) <= '9') ? (x) - '0' : ((x) & 7) + 9) |
| #define | error_ptr(error) ((void*)error) |
| #define | error_description(error) (json_tokener_get_error(error)) |
| #define | is_error(ptr) (ptr == NULL) |
Do not use, only contains deprecated defines.
+Copyright (c) 2004, 2005 Metaparadigm Pte. Ltd. Michael Clark michael@metaparadigm.com
+This library is free software; you can redistribute it and/or modify it under the terms of the MIT license. See COPYING for details.
+| #define error_description | +( | ++ | error | ) | +(json_tokener_get_error(error)) | +
| #define error_ptr | +( | ++ | error | ) | +((void*)error) | +
| #define hexdigit | +( | ++ | x | ) | +(((x) <= '9') ? (x) - '0' : ((x) & 7) + 9) | +
| #define is_error | +( | ++ | ptr | ) | +(ptr == NULL) | +
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/classes.html b/json-c/doc/html/classes.html
new file mode 100755
index 0000000..256a994
--- /dev/null
+++ b/json-c/doc/html/classes.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
|
| json_object_iterator | lh_table | |||
| json_tokener |
| |||||
| array_list | json_object | json_tokener_srec | ||||
| json_object_iter |
| printbuf | |||
| json_object::data | lh_entry | |||||
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/closed.png b/json-c/doc/html/closed.png
new file mode 100755
index 0000000..98cc2c9
Binary files /dev/null and b/json-c/doc/html/closed.png differ
diff --git a/json-c/doc/html/debug_8h.html b/json-c/doc/html/debug_8h.html
new file mode 100755
index 0000000..b2cd5be
--- /dev/null
+++ b/json-c/doc/html/debug_8h.html
@@ -0,0 +1,386 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
Do not use, json-c internal, may be changed or removed at any time. +More...
++Macros | |
| #define | __STRING(x) #x |
| #define | JASSERT(cond) do {} while(0) |
| #define | MC_ERROR(x,...) mc_error(x, ##__VA_ARGS__) |
| #define | MC_SET_DEBUG(x) if (0) mc_set_debug(x) |
| #define | MC_GET_DEBUG() (0) |
| #define | MC_SET_SYSLOG(x) if (0) mc_set_syslog(x) |
| #define | MC_DEBUG(x,...) if (0) mc_debug(x, ##__VA_ARGS__) |
| #define | MC_INFO(x,...) if (0) mc_info(x, ##__VA_ARGS__) |
+Functions | |
| void | mc_set_debug (int debug) |
| int | mc_get_debug (void) |
| void | mc_set_syslog (int syslog) |
| void | mc_debug (const char *msg,...) |
| void | mc_error (const char *msg,...) |
| void | mc_info (const char *msg,...) |
Do not use, json-c internal, may be changed or removed at any time.
+| #define __STRING | +( | ++ | x | ) | +#x | +
| #define JASSERT | +( | ++ | cond | ) | +do {} while(0) | +
| #define MC_DEBUG | +( | ++ | x, | +
| + | + | + | ... | +
| + | ) | +if (0) mc_debug(x, ##__VA_ARGS__) | +
| #define MC_ERROR | +( | ++ | x, | +
| + | + | + | ... | +
| + | ) | +mc_error(x, ##__VA_ARGS__) | +
| #define MC_GET_DEBUG | +( | +) | +(0) | +
| #define MC_INFO | +( | ++ | x, | +
| + | + | + | ... | +
| + | ) | +if (0) mc_info(x, ##__VA_ARGS__) | +
| #define MC_SET_DEBUG | +( | ++ | x | ) | +if (0) mc_set_debug(x) | +
| #define MC_SET_SYSLOG | +( | ++ | x | ) | +if (0) mc_set_syslog(x) | +
| void mc_debug | +( | +const char * | +msg, | +
| + | + | + | ... | +
| + | ) | ++ |
| void mc_error | +( | +const char * | +msg, | +
| + | + | + | ... | +
| + | ) | ++ |
| int mc_get_debug | +( | +void | +) | ++ |
| void mc_info | +( | +const char * | +msg, | +
| + | + | + | ... | +
| + | ) | ++ |
| void mc_set_debug | +( | +int | +debug | ) | ++ |
| void mc_set_syslog | +( | +int | +syslog | ) | ++ |
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/deprecated.html b/json-c/doc/html/deprecated.html
new file mode 100755
index 0000000..5d7c923
--- /dev/null
+++ b/json-c/doc/html/deprecated.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/doc.png b/json-c/doc/html/doc.png
new file mode 100755
index 0000000..17edabf
Binary files /dev/null and b/json-c/doc/html/doc.png differ
diff --git a/json-c/doc/html/doxygen.css b/json-c/doc/html/doxygen.css
new file mode 100755
index 0000000..02e8b01
--- /dev/null
+++ b/json-c/doc/html/doxygen.css
@@ -0,0 +1,1440 @@
+/* The standard CSS for doxygen 1.8.8 */
+
+body, table, div, p, dl {
+ font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
+}
+
+.title {
+ font: 400 14px/28px Roboto,sans-serif;
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.starttd {
+ margin-top: 0px;
+}
+
+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, a.line, a.line:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef: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 6px;
+ margin: 4px 8px 4px 2px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+div.line.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 inside a (index) page */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #9CAFD4;
+ border-bottom: 1px solid #9CAFD4;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+ padding-top: 3px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+.arrow {
+ color: #9CAFD4;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ cursor: pointer;
+ font-size: 80%;
+ display: inline-block;
+ width: 16px;
+ height: 22px;
+}
+
+.icon {
+ font-family: Arial, Helvetica;
+ font-weight: bold;
+ font-size: 12px;
+ height: 14px;
+ width: 16px;
+ display: inline-block;
+ background-color: #728DC1;
+ color: white;
+ text-align: center;
+ border-radius: 4px;
+ margin-left: 2px;
+ margin-right: 2px;
+}
+
+.icona {
+ width: 24px;
+ height: 22px;
+ display: inline-block;
+}
+
+.iconfopen {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('ftv2folderopen.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.iconfclosed {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('ftv2folderclosed.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.icondoc {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('ftv2doc.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+table.directory {
+ font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+ padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+ margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+ margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -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;
+}
+
+.diagraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+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;
+}
+
+/* tooltip related style info */
+
+.ttc {
+ position: absolute;
+ display: none;
+}
+
+#powerTip {
+ cursor: default;
+ white-space: nowrap;
+ background-color: white;
+ border: 1px solid gray;
+ border-radius: 4px 4px 4px 4px;
+ box-shadow: 1px 1px 7px gray;
+ display: none;
+ font-size: smaller;
+ max-width: 80%;
+ opacity: 0.9;
+ padding: 1ex 1em 1em;
+ position: absolute;
+ z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+ color: grey;
+ font-style: italic;
+}
+
+#powerTip div.ttname a {
+ font-weight: bold;
+}
+
+#powerTip div.ttname {
+ font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+ color: #006318;
+}
+
+#powerTip div {
+ margin: 0px;
+ padding: 0px;
+ font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+ content: "";
+ position: absolute;
+ margin: 0px;
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.w:after, #powerTip.w:before,
+#powerTip.e:after, #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ border: solid transparent;
+ content: " ";
+ height: 0;
+ width: 0;
+ position: absolute;
+}
+
+#powerTip.n:after, #powerTip.s:after,
+#powerTip.w:after, #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+ border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before, #powerTip.s:before,
+#powerTip.w:before, #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+ border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+ top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+ border-top-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+#powerTip.n:before {
+ border-top-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+ left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+ right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+ left: 14px;
+}
+
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+ border-bottom-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+ border-bottom-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+ left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+ right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+ left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+ left: 100%;
+}
+#powerTip.e:after {
+ border-left-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.e:before {
+ border-left-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+ right: 100%;
+}
+#powerTip.w:after {
+ border-right-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.w:before {
+ border-right-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
diff --git a/json-c/doc/html/doxygen.png b/json-c/doc/html/doxygen.png
new file mode 100755
index 0000000..3ff17d8
Binary files /dev/null and b/json-c/doc/html/doxygen.png differ
diff --git a/json-c/doc/html/dynsections.js b/json-c/doc/html/dynsections.js
new file mode 100755
index 0000000..85e1836
--- /dev/null
+++ b/json-c/doc/html/dynsections.js
@@ -0,0 +1,97 @@
+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|
+ json-c
+ 0.13.1
+
+ |
+
| arraylist.h | Internal methods for working with json_type_array objects. Although this is exposed by the json_object_get_array() method, it is not recommended for direct use |
| bits.h | Do not use, only contains deprecated defines |
| debug.h | Do not use, json-c internal, may be changed or removed at any time |
| json.h | A convenience header that may be included instead of other individual ones |
| json_c_version.h | Methods for retrieving the json-c version |
| json_inttypes.h | Do not use, json-c internal, may be changed or removed at any time |
| json_object.h | Core json-c API. Start here, or with json_tokener.h |
| json_object_iterator.h | An API for iterating over json_type_object objects, styled to be familiar to C++ programmers. Unlike json_object_object_foreach() and json_object_object_foreachC(), this avoids the need to expose json-c internals like lh_entry |
| json_object_private.h | Do not use, json-c internal, may be changed or removed at any time |
| json_pointer.h | JSON Pointer (RFC 6901) implementation for retrieving objects from a json-c object tree |
| json_tokener.h | Methods to parse an input string into a tree of json_object objects |
| json_util.h | Miscllaneous utility functions and macros |
| json_visit.h | Methods for walking a tree of objects |
| linkhash.h | Internal methods for working with json_type_object objects. Although this is exposed by the json_object_get_object() function and within the json_object_iter type, it is not recommended for direct use |
| math_compat.h | Do not use, json-c internal, may be changed or removed at any time |
| printbuf.h | Internal string buffer handing. Unless you're writing a json_object_to_json_string_fn implementation for use with json_object_set_serializer() direct use of this is not recommended |
| random_seed.h | Do not use, json-c internal, may be changed or removed at any time |
| snprintf_compat.h | Do not use, json-c internal, may be changed or removed at any time |
| strdup_compat.h | Do not use, json-c internal, may be changed or removed at any time |
| strerror_override.h | Do not use, json-c internal, may be changed or removed at any time |
| strerror_override_private.h | Do not use, json-c internal, may be changed or removed at any time |
| vasprintf_compat.h | Do not use, json-c internal, may be changed or removed at any time |
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/folderclosed.png b/json-c/doc/html/folderclosed.png
new file mode 100755
index 0000000..bb8ab35
Binary files /dev/null and b/json-c/doc/html/folderclosed.png differ
diff --git a/json-c/doc/html/folderopen.png b/json-c/doc/html/folderopen.png
new file mode 100755
index 0000000..d6c7f67
Binary files /dev/null and b/json-c/doc/html/folderopen.png differ
diff --git a/json-c/doc/html/ftv2blank.png b/json-c/doc/html/ftv2blank.png
new file mode 100755
index 0000000..63c605b
Binary files /dev/null and b/json-c/doc/html/ftv2blank.png differ
diff --git a/json-c/doc/html/ftv2doc.png b/json-c/doc/html/ftv2doc.png
new file mode 100755
index 0000000..17edabf
Binary files /dev/null and b/json-c/doc/html/ftv2doc.png differ
diff --git a/json-c/doc/html/ftv2folderclosed.png b/json-c/doc/html/ftv2folderclosed.png
new file mode 100755
index 0000000..bb8ab35
Binary files /dev/null and b/json-c/doc/html/ftv2folderclosed.png differ
diff --git a/json-c/doc/html/ftv2folderopen.png b/json-c/doc/html/ftv2folderopen.png
new file mode 100755
index 0000000..d6c7f67
Binary files /dev/null and b/json-c/doc/html/ftv2folderopen.png differ
diff --git a/json-c/doc/html/ftv2lastnode.png b/json-c/doc/html/ftv2lastnode.png
new file mode 100755
index 0000000..63c605b
Binary files /dev/null and b/json-c/doc/html/ftv2lastnode.png differ
diff --git a/json-c/doc/html/ftv2link.png b/json-c/doc/html/ftv2link.png
new file mode 100755
index 0000000..17edabf
Binary files /dev/null and b/json-c/doc/html/ftv2link.png differ
diff --git a/json-c/doc/html/ftv2mlastnode.png b/json-c/doc/html/ftv2mlastnode.png
new file mode 100755
index 0000000..0b63f6d
Binary files /dev/null and b/json-c/doc/html/ftv2mlastnode.png differ
diff --git a/json-c/doc/html/ftv2mnode.png b/json-c/doc/html/ftv2mnode.png
new file mode 100755
index 0000000..0b63f6d
Binary files /dev/null and b/json-c/doc/html/ftv2mnode.png differ
diff --git a/json-c/doc/html/ftv2node.png b/json-c/doc/html/ftv2node.png
new file mode 100755
index 0000000..63c605b
Binary files /dev/null and b/json-c/doc/html/ftv2node.png differ
diff --git a/json-c/doc/html/ftv2plastnode.png b/json-c/doc/html/ftv2plastnode.png
new file mode 100755
index 0000000..c6ee22f
Binary files /dev/null and b/json-c/doc/html/ftv2plastnode.png differ
diff --git a/json-c/doc/html/ftv2pnode.png b/json-c/doc/html/ftv2pnode.png
new file mode 100755
index 0000000..c6ee22f
Binary files /dev/null and b/json-c/doc/html/ftv2pnode.png differ
diff --git a/json-c/doc/html/ftv2splitbar.png b/json-c/doc/html/ftv2splitbar.png
new file mode 100755
index 0000000..fe895f2
Binary files /dev/null and b/json-c/doc/html/ftv2splitbar.png differ
diff --git a/json-c/doc/html/ftv2vertline.png b/json-c/doc/html/ftv2vertline.png
new file mode 100755
index 0000000..63c605b
Binary files /dev/null and b/json-c/doc/html/ftv2vertline.png differ
diff --git a/json-c/doc/html/functions.html b/json-c/doc/html/functions.html
new file mode 100755
index 0000000..881ef5c
--- /dev/null
+++ b/json-c/doc/html/functions.html
@@ -0,0 +1,330 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/functions_vars.html b/json-c/doc/html/functions_vars.html
new file mode 100755
index 0000000..8127c04
--- /dev/null
+++ b/json-c/doc/html/functions_vars.html
@@ -0,0 +1,330 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals.html b/json-c/doc/html/globals.html
new file mode 100755
index 0000000..076e835
--- /dev/null
+++ b/json-c/doc/html/globals.html
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_a.html b/json-c/doc/html/globals_a.html
new file mode 100755
index 0000000..a960024
--- /dev/null
+++ b/json-c/doc/html/globals_a.html
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_defs.html b/json-c/doc/html/globals_defs.html
new file mode 100755
index 0000000..110a516
--- /dev/null
+++ b/json-c/doc/html/globals_defs.html
@@ -0,0 +1,347 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_e.html b/json-c/doc/html/globals_e.html
new file mode 100755
index 0000000..b595ae3
--- /dev/null
+++ b/json-c/doc/html/globals_e.html
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_enum.html b/json-c/doc/html/globals_enum.html
new file mode 100755
index 0000000..a698b73
--- /dev/null
+++ b/json-c/doc/html/globals_enum.html
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_eval.html b/json-c/doc/html/globals_eval.html
new file mode 100755
index 0000000..ba7c8b3
--- /dev/null
+++ b/json-c/doc/html/globals_eval.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_f.html b/json-c/doc/html/globals_f.html
new file mode 100755
index 0000000..75064ea
--- /dev/null
+++ b/json-c/doc/html/globals_f.html
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_func.html b/json-c/doc/html/globals_func.html
new file mode 100755
index 0000000..5d43b44
--- /dev/null
+++ b/json-c/doc/html/globals_func.html
@@ -0,0 +1,479 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_h.html b/json-c/doc/html/globals_h.html
new file mode 100755
index 0000000..09925df
--- /dev/null
+++ b/json-c/doc/html/globals_h.html
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_i.html b/json-c/doc/html/globals_i.html
new file mode 100755
index 0000000..f38cf90
--- /dev/null
+++ b/json-c/doc/html/globals_i.html
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_j.html b/json-c/doc/html/globals_j.html
new file mode 100755
index 0000000..d01dbd3
--- /dev/null
+++ b/json-c/doc/html/globals_j.html
@@ -0,0 +1,638 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_l.html b/json-c/doc/html/globals_l.html
new file mode 100755
index 0000000..8500331
--- /dev/null
+++ b/json-c/doc/html/globals_l.html
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_m.html b/json-c/doc/html/globals_m.html
new file mode 100755
index 0000000..26163be
--- /dev/null
+++ b/json-c/doc/html/globals_m.html
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_n.html b/json-c/doc/html/globals_n.html
new file mode 100755
index 0000000..d39c38b
--- /dev/null
+++ b/json-c/doc/html/globals_n.html
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_p.html b/json-c/doc/html/globals_p.html
new file mode 100755
index 0000000..7aef3ec
--- /dev/null
+++ b/json-c/doc/html/globals_p.html
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_s.html b/json-c/doc/html/globals_s.html
new file mode 100755
index 0000000..72278f5
--- /dev/null
+++ b/json-c/doc/html/globals_s.html
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_t.html b/json-c/doc/html/globals_t.html
new file mode 100755
index 0000000..508bf4f
--- /dev/null
+++ b/json-c/doc/html/globals_t.html
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_type.html b/json-c/doc/html/globals_type.html
new file mode 100755
index 0000000..53be580
--- /dev/null
+++ b/json-c/doc/html/globals_type.html
@@ -0,0 +1,118 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/globals_vars.html b/json-c/doc/html/globals_vars.html
new file mode 100755
index 0000000..d82a613
--- /dev/null
+++ b/json-c/doc/html/globals_vars.html
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/index.html b/json-c/doc/html/index.html
new file mode 100755
index 0000000..d220723
--- /dev/null
+++ b/json-c/doc/html/index.html
@@ -0,0 +1,129 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
Build Status
JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects. It aims to conform to RFC 7159.
+git, gcc and autotools Home page for json-c: https://github.com/json-c/json-c/wiki
+See also the "Installing prerequisites" section below.
+gcc, clang, or another C compilerlibtool>=2.2.6bIf you're not using a release tarball, you'll also need:
+autoconf>=2.64 (autoreconf)automake>=1.13Make sure you have a complete libtool install, including libtoolize.
To generate docs (e.g. as part of make distcheck) you'll also need:
doxygen>=1.8.13json-c GitHub repo: https://github.com/json-c/json-c
```sh $ git clone https://github.com/json-c/json-c.git $ cd json-c $ sh autogen.sh ```
+followed by
+```sh $ ./configure # –enable-threading $ make $ make install ```
+To build and run the test programs:
+```sh $ make check $ make USE_VALGRIND=0 check # optionally skip using valgrind ```
+If you are on a relatively modern system, you'll likely be able to install the prerequisites using your OS's packaging system.
+```sh sudo apt install git sudo apt install autoconf automake libtool sudo apt install valgrind # optional ```
+Then start from the "git clone" command, above.
+For older OS's that don't have up-to-date version of the packages will require a bit more work. For example, CentOS release 5.11, etc...
+```sh curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz curl -O http://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz curl -O http://ftp.gnu.org/gnu/libtool/libtool-2.2.6b.tar.gz
+tar xzf autoconf-2.69.tar.gz tar xzf automake-1.15.tar.gz tar xzf libtool-2.2.6b.tar.gz
+export PATH=${HOME}/ac_install/bin:$PATH
+(cd autoconf-2.69 && \ ./configure –prefix ${HOME}/ac_install && \ make && \ make install)
+(cd automake-1.15 && \ ./configure –prefix ${HOME}/ac_install && \ make && \ make install)
+(cd libtool-2.2.6b && \ ./configure –prefix ${HOME}/ac_install && \ make && \ make install) ```
+Although json-c does not support fully multi-threaded access to object trees, it has some code to help make use in threaded programs a bit safer. Currently, this is limited to using atomic operations for json_object_get() and json_object_put().
+Since this may have a performance impact, of at least 3x slower according to https://stackoverflow.com/a/11609063, it is disabled by default. You may turn it on by adjusting your configure command with: –enable-threading
+Separately, the default hash function used for object field keys, lh_char_hash, uses a compare-and-swap operation to ensure the randomly seed is only generated once. Because this is a one-time operation, it is always compiled in when the compare-and-swap operation is available.
+libjson-c If your system has pkgconfig, then you can just add this to your makefile:
```make CFLAGS += $(shell pkg-config –cflags json-c) LDFLAGS += $(shell pkg-config –libs json-c) ```
+Without pkgconfig, you would do something like this:
```make JSON_C_DIR=/path/to/json_c/install CFLAGS += -I/include/json-c LDFLAGS+= -L/lib -ljson-c ```
+To use json-c you can either include json.h, or preferrably, one of the following more specific header files:
+For a full list of headers see files.html
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/issues__closed__for__0_813_8md.html b/json-c/doc/html/issues__closed__for__0_813_8md.html
new file mode 100755
index 0000000..f66e6cc
--- /dev/null
+++ b/json-c/doc/html/issues__closed__for__0_813_8md.html
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+|
+ json-c
+ 0.13.1
+
+ |
+
+ 1.8.8
+
+
+
diff --git a/json-c/doc/html/jquery.js b/json-c/doc/html/jquery.js
new file mode 100755
index 0000000..f5343ed
--- /dev/null
+++ b/json-c/doc/html/jquery.js
@@ -0,0 +1,87 @@
+/*!
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4| t |