From e9bba3cdd74c79f73f5d844311f460aba04b0a08 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Thu, 20 Aug 2020 10:43:43 +0800 Subject: [PATCH 01/10] fix jdbc memleaks #3098 --- src/client/src/TSDBJNIConnector.c | 7 ++--- .../com/taosdata/jdbc/TSDBJNIConnector.java | 30 ++++++++++--------- .../java/com/taosdata/jdbc/TSDBStatement.java | 17 ++++++----- 3 files changed, 28 insertions(+), 26 deletions(-) diff --git a/src/client/src/TSDBJNIConnector.c b/src/client/src/TSDBJNIConnector.c index 34204f96bf..0dd5e13181 100644 --- a/src/client/src/TSDBJNIConnector.c +++ b/src/client/src/TSDBJNIConnector.c @@ -327,13 +327,12 @@ JNIEXPORT jlong JNICALL Java_com_taosdata_jdbc_TSDBJNIConnector_getResultSetImp( STscObj *pObj = pSql->pTscObj; if (tscIsUpdateQuery(pSql)) { - // taos_free_result(pSql); // free result here - jniDebug("jobj:%p, conn:%p, no resultset, %p", jobj, pObj, (void *)tres); - return 0; + jniDebug("jobj:%p, conn:%p, update query, no resultset, %p", jobj, pObj, (void *)tres); } else { jniDebug("jobj:%p, conn:%p, get resultset, %p", jobj, pObj, (void *)tres); - return tres; } + + return tres; } JNIEXPORT jint JNICALL Java_com_taosdata_jdbc_TSDBJNIConnector_freeResultSetImp(JNIEnv *env, jobject jobj, jlong con, diff --git a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java index bab3c79089..25f7f8576d 100755 --- a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java +++ b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java @@ -111,6 +111,8 @@ public class TSDBJNIConnector { * @throws SQLException */ public long executeQuery(String sql) throws SQLException { + // close previous result set if the user forgets to invoke the + // free method to close previous result set. if (!this.isResultsetClosed) { freeResultSet(taosResultSetPointer); } @@ -123,21 +125,20 @@ public class TSDBJNIConnector { this.freeResultSet(pSql); throw new SQLException(TSDBConstants.WrapErrMsg("Unsupported encoding")); } + int code = this.getErrCode(pSql); if (code != 0) { affectedRows = -1; - String err_msg = this.getErrMsg(pSql); + String msg = this.getErrMsg(pSql); + this.freeResultSet(pSql); - throw new SQLException(TSDBConstants.WrapErrMsg(err_msg), "", code); + throw new SQLException(TSDBConstants.WrapErrMsg(msg), "", code); } - // Try retrieving result set for the executed SQL using the current connection pointer. If the executed - // SQL is a DML/DDL which doesn't return a result set, then taosResultSetPointer should be 0L. Otherwise, - // taosResultSetPointer should be a non-zero value. + // Try retrieving result set for the executed SQL using the current connection pointer. taosResultSetPointer = this.getResultSetImp(this.taos, pSql); - if (taosResultSetPointer != TSDBConstants.JNI_NULL_POINTER) { - isResultsetClosed = false; - } + isResultsetClosed = (taosResultSetPointer == TSDBConstants.JNI_NULL_POINTER); + return pSql; } @@ -178,13 +179,14 @@ public class TSDBJNIConnector { int res = TSDBConstants.JNI_SUCCESS; if (result != taosResultSetPointer && taosResultSetPointer != TSDBConstants.JNI_NULL_POINTER) { throw new RuntimeException("Invalid result set pointer"); - } else if (taosResultSetPointer != TSDBConstants.JNI_NULL_POINTER) { - res = this.freeResultSetImp(this.taos, result); - isResultsetClosed = true; // reset resultSetPointer to 0 after freeResultSetImp() return - taosResultSetPointer = TSDBConstants.JNI_NULL_POINTER; - } else { - isResultsetClosed = true; } + + if (taosResultSetPointer != TSDBConstants.JNI_NULL_POINTER) { + res = this.freeResultSetImp(this.taos, result); + taosResultSetPointer = TSDBConstants.JNI_NULL_POINTER; + } + + isResultsetClosed = true; return res; } diff --git a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java index e828864313..54598212ed 100644 --- a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java +++ b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java @@ -51,6 +51,8 @@ public class TSDBStatement implements Statement { if (isClosed) { throw new SQLException("Invalid method call on a closed statement."); } + + // TODO make sure it is not a update query pSql = this.connecter.executeQuery(sql); long resultSetPointer = this.connecter.getResultSet(); @@ -71,20 +73,19 @@ public class TSDBStatement implements Statement { if (isClosed) { throw new SQLException("Invalid method call on a closed statement."); } + + // TODO check if current query is update query pSql = this.connecter.executeQuery(sql); long resultSetPointer = this.connecter.getResultSet(); if (resultSetPointer == TSDBConstants.JNI_CONNECTION_NULL) { this.connecter.freeResultSet(pSql); throw new SQLException(TSDBConstants.FixErrMsg(TSDBConstants.JNI_CONNECTION_NULL)); - } else if (resultSetPointer != TSDBConstants.JNI_NULL_POINTER) { - this.connecter.freeResultSet(); - throw new SQLException("The executed SQL is not a DML or a DDL"); - } else { - int num = this.connecter.getAffectedRows(pSql); - this.connecter.freeResultSet(pSql); - return num; - } + } + + int num = this.connecter.getAffectedRows(pSql); + this.connecter.freeResultSet(pSql); + return num; } public String getErrorMsg(long pSql) { From 0a3f894407b25c46533155c98636f75b9c848e2b Mon Sep 17 00:00:00 2001 From: Shuduo Sang Date: Thu, 20 Aug 2020 13:56:21 +0800 Subject: [PATCH 02/10] remove local grafana directory to prepare for submodule. --- src/connector/grafana/tdengine/.gitignore | 37 - src/connector/grafana/tdengine/.jscs.json | 14 - src/connector/grafana/tdengine/Gruntfile.js | 85 - src/connector/grafana/tdengine/LICENSE | 661 --- src/connector/grafana/tdengine/README.md | 96 - .../tdengine/dashboard/import_dashboard.png | Bin 100470 -> 0 bytes .../tdengine/dashboard/tdengine-grafana.json | 588 --- .../tdengine/dashboard/tdengine_dashboard.png | Bin 177357 -> 0 bytes src/connector/grafana/tdengine/dist/README.md | 96 - .../tdengine/dist/css/query-editor.css | 3 - .../dist/dashboard/import_dashboard.png | Bin 100470 -> 0 bytes .../dist/dashboard/tdengine-grafana.json | 588 --- .../dist/dashboard/tdengine_dashboard.png | Bin 177357 -> 0 bytes .../grafana/tdengine/dist/datasource.js | 156 - .../grafana/tdengine/dist/datasource.js.map | 1 - .../tdengine/dist/img/taosdata_logo.png | Bin 3211 -> 0 bytes src/connector/grafana/tdengine/dist/module.js | 37 - .../grafana/tdengine/dist/module.js.map | 1 - .../tdengine/dist/partials/config.html | 19 - .../tdengine/dist/partials/query.editor.html | 58 - .../grafana/tdengine/dist/plugin.json | 35 - .../grafana/tdengine/dist/query_ctrl.js | 51 - .../grafana/tdengine/dist/query_ctrl.js.map | 1 - .../grafana/tdengine/package-lock.json | 4000 ----------------- src/connector/grafana/tdengine/package.json | 45 - .../grafana/tdengine/spec/datasource_spec.js | 22 - .../grafana/tdengine/spec/test-main.js | 20 - .../grafana/tdengine/src/css/query-editor.css | 3 - .../grafana/tdengine/src/datasource.js | 127 - .../tdengine/src/img/taosdata_logo.png | Bin 3211 -> 0 bytes src/connector/grafana/tdengine/src/module.js | 19 - .../grafana/tdengine/src/partials/config.html | 19 - .../tdengine/src/partials/query.editor.html | 58 - .../grafana/tdengine/src/plugin.json | 35 - .../grafana/tdengine/src/query_ctrl.js | 25 - src/connector/grafana/tdengine/yarn.lock | 2960 ------------ 36 files changed, 9860 deletions(-) delete mode 100755 src/connector/grafana/tdengine/.gitignore delete mode 100755 src/connector/grafana/tdengine/.jscs.json delete mode 100755 src/connector/grafana/tdengine/Gruntfile.js delete mode 100755 src/connector/grafana/tdengine/LICENSE delete mode 100644 src/connector/grafana/tdengine/README.md delete mode 100644 src/connector/grafana/tdengine/dashboard/import_dashboard.png delete mode 100755 src/connector/grafana/tdengine/dashboard/tdengine-grafana.json delete mode 100755 src/connector/grafana/tdengine/dashboard/tdengine_dashboard.png delete mode 100644 src/connector/grafana/tdengine/dist/README.md delete mode 100644 src/connector/grafana/tdengine/dist/css/query-editor.css delete mode 100644 src/connector/grafana/tdengine/dist/dashboard/import_dashboard.png delete mode 100644 src/connector/grafana/tdengine/dist/dashboard/tdengine-grafana.json delete mode 100644 src/connector/grafana/tdengine/dist/dashboard/tdengine_dashboard.png delete mode 100644 src/connector/grafana/tdengine/dist/datasource.js delete mode 100644 src/connector/grafana/tdengine/dist/datasource.js.map delete mode 100644 src/connector/grafana/tdengine/dist/img/taosdata_logo.png delete mode 100644 src/connector/grafana/tdengine/dist/module.js delete mode 100644 src/connector/grafana/tdengine/dist/module.js.map delete mode 100644 src/connector/grafana/tdengine/dist/partials/config.html delete mode 100644 src/connector/grafana/tdengine/dist/partials/query.editor.html delete mode 100644 src/connector/grafana/tdengine/dist/plugin.json delete mode 100644 src/connector/grafana/tdengine/dist/query_ctrl.js delete mode 100644 src/connector/grafana/tdengine/dist/query_ctrl.js.map delete mode 100644 src/connector/grafana/tdengine/package-lock.json delete mode 100644 src/connector/grafana/tdengine/package.json delete mode 100755 src/connector/grafana/tdengine/spec/datasource_spec.js delete mode 100755 src/connector/grafana/tdengine/spec/test-main.js delete mode 100644 src/connector/grafana/tdengine/src/css/query-editor.css delete mode 100644 src/connector/grafana/tdengine/src/datasource.js delete mode 100644 src/connector/grafana/tdengine/src/img/taosdata_logo.png delete mode 100644 src/connector/grafana/tdengine/src/module.js delete mode 100644 src/connector/grafana/tdengine/src/partials/config.html delete mode 100644 src/connector/grafana/tdengine/src/partials/query.editor.html delete mode 100644 src/connector/grafana/tdengine/src/plugin.json delete mode 100644 src/connector/grafana/tdengine/src/query_ctrl.js delete mode 100644 src/connector/grafana/tdengine/yarn.lock diff --git a/src/connector/grafana/tdengine/.gitignore b/src/connector/grafana/tdengine/.gitignore deleted file mode 100755 index b58b02b878..0000000000 --- a/src/connector/grafana/tdengine/.gitignore +++ /dev/null @@ -1,37 +0,0 @@ -node_modules -npm-debug.log -coverage/ -.aws-config.json -awsconfig -/emails/dist -/public_gen -/tmp -vendor/phantomjs/phantomjs - -docs/AWS_S3_BUCKET -docs/GIT_BRANCH -docs/VERSION -docs/GITCOMMIT -docs/changed-files -docs/changed-files - -# locally required config files -public/css/*.min.css - -# Editor junk -*.sublime-workspace -*.swp -.idea/ -*.iml - -/data/* -/bin/* - -conf/custom.ini -fig.yml -profile.cov -grafana -.notouch - -# Test artifacts -/dist/test/ diff --git a/src/connector/grafana/tdengine/.jscs.json b/src/connector/grafana/tdengine/.jscs.json deleted file mode 100755 index a51ef6610e..0000000000 --- a/src/connector/grafana/tdengine/.jscs.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "esnext": true, - "disallowImplicitTypeConversion": ["string"], - "disallowKeywords": ["with"], - "disallowMultipleLineBreaks": true, - "disallowMixedSpacesAndTabs": true, - "disallowTrailingWhitespace": true, - "requireSpacesInFunctionExpression": { - "beforeOpeningCurlyBrace": true - }, - "disallowSpacesInsideArrayBrackets": true, - "disallowSpacesInsideParentheses": true, - "validateIndentation": 2 -} diff --git a/src/connector/grafana/tdengine/Gruntfile.js b/src/connector/grafana/tdengine/Gruntfile.js deleted file mode 100755 index ad48c7f848..0000000000 --- a/src/connector/grafana/tdengine/Gruntfile.js +++ /dev/null @@ -1,85 +0,0 @@ -module.exports = function(grunt) { - - require('load-grunt-tasks')(grunt); - - grunt.loadNpmTasks('grunt-execute'); - grunt.loadNpmTasks('grunt-contrib-clean'); - - grunt.initConfig({ - - clean: ["dist"], - - copy: { - src_to_dist: { - cwd: 'src', - expand: true, - src: ['**/*', '!**/*.js', '!**/*.scss'], - dest: 'dist' - }, - dashboard_to_dist: { - expand: true, - src: ['dashboard/*'], - dest: 'dist' - }, - pluginDef: { - expand: true, - src: ['README.md'], - dest: 'dist' - } - }, - - watch: { - rebuild_all: { - files: ['src/**/*'], - tasks: ['default'], - options: {spawn: false} - } - }, - - babel: { - options: { - sourceMap: true, - presets: ['env'], - plugins: ['transform-object-rest-spread'] - }, - dist: { - files: [{ - cwd: 'src', - expand: true, - src: ['**/*.js'], - dest: 'dist', - ext:'.js' - }] - }, - distTestNoSystemJs: { - files: [{ - cwd: 'src', - expand: true, - src: ['**/*.js'], - dest: 'dist/test', - ext:'.js' - }] - }, - distTestsSpecsNoSystemJs: { - files: [{ - expand: true, - cwd: 'spec', - src: ['**/*.js'], - dest: 'dist/test/spec', - ext:'.js' - }] - } - }, - - mochaTest: { - test: { - options: { - reporter: 'spec' - }, - src: ['dist/test/spec/test-main.js', 'dist/test/spec/*_spec.js'] - } - } - }); - - grunt.registerTask('default', ['clean', 'copy:src_to_dist', 'copy:dashboard_to_dist', 'copy:pluginDef', 'babel', 'mochaTest']); -}; diff --git a/src/connector/grafana/tdengine/LICENSE b/src/connector/grafana/tdengine/LICENSE deleted file mode 100755 index 20c71216de..0000000000 --- a/src/connector/grafana/tdengine/LICENSE +++ /dev/null @@ -1,661 +0,0 @@ - GNU AFFERO GENERAL PUBLIC LICENSE - Version 3, 19 November 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU Affero General Public License is a free, copyleft license for -software and other kinds of works, specifically designed to ensure -cooperation with the community in the case of network server software. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -our General Public Licenses are intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - Developers that use our General Public Licenses protect your rights -with two steps: (1) assert copyright on the software, and (2) offer -you this License which gives you legal permission to copy, distribute -and/or modify the software. - - A secondary benefit of defending all users' freedom is that -improvements made in alternate versions of the program, if they -receive widespread use, become available for other developers to -incorporate. Many developers of free software are heartened and -encouraged by the resulting cooperation. However, in the case of -software used on network servers, this result may fail to come about. -The GNU General Public License permits making a modified version and -letting the public access it on a server without ever releasing its -source code to the public. - - The GNU Affero General Public License is designed specifically to -ensure that, in such cases, the modified source code becomes available -to the community. It requires the operator of a network server to -provide the source code of the modified version running there to the -users of that server. Therefore, public use of a modified version, on -a publicly accessible server, gives the public access to the source -code of the modified version. - - An older license, called the Affero General Public License and -published by Affero, was designed to accomplish similar goals. This is -a different license, not a version of the Affero GPL, but Affero has -released a new version of the Affero GPL which permits relicensing under -this license. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU Affero General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Remote Network Interaction; Use with the GNU General Public License. - - Notwithstanding any other provision of this License, if you modify the -Program, your modified version must prominently offer all users -interacting with it remotely through a computer network (if your version -supports such interaction) an opportunity to receive the Corresponding -Source of your version by providing access to the Corresponding Source -from a network server at no charge, through some standard or customary -means of facilitating copying of software. This Corresponding Source -shall include the Corresponding Source for any work covered by version 3 -of the GNU General Public License that is incorporated pursuant to the -following paragraph. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the work with which it is combined will remain governed by version -3 of the GNU General Public License. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU Affero General Public License from time to time. Such new versions -will be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU Affero General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU Affero General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU Affero General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published - by the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If your software can interact with users remotely through a computer -network, you should also make sure that it provides a way for users to -get its source. For example, if your program is a web application, its -interface could display a "Source" link that leads users to an archive -of the code. There are many ways you could offer source, and different -solutions will be better for different programs; see section 13 for the -specific requirements. - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU AGPL, see -. \ No newline at end of file diff --git a/src/connector/grafana/tdengine/README.md b/src/connector/grafana/tdengine/README.md deleted file mode 100644 index 3012a54e9f..0000000000 --- a/src/connector/grafana/tdengine/README.md +++ /dev/null @@ -1,96 +0,0 @@ -TDengine Datasource - build by Taosdata Inc. www.taosdata.com - -TDengine backend server implement 2 urls: - - * `/heartbeat` return 200 ok. Used for "Test connection" on the datasource config page. - * `/query` return data based on input sqls. - -## Installation - -To install this plugin: -Copy the data source you want to /var/lib/grafana/plugins/. Then restart grafana-server. The new data source should now be available in the data source type dropdown in the Add Data Source View. - -``` -cp -r /connector/grafana/tdengine /var/lib/grafana/plugins/ -sudo service grafana-server restart -``` - -### Query API - -Example request -``` javascript -[{ - "refId": "A", - "alias": "taosd-memory", - "sql": "select avg(mem_taosd) from sys.dn where ts > now-5m and ts < now interval(500a)" -}, -{ - "refId": "B", - "alias": "system-memory", - "sql": "select avg(mem_system) from sys.dn where ts > now-5m and ts < now interval(500a)" -}] -``` - -Example response -``` javascript -[{ - "datapoints": [ - [206.488281, 1538137825000], - [206.488281, 1538137855000], - [206.488281, 1538137885500], - [210.609375, 1538137915500], - [210.867188, 1538137945500] - ], - "refId": "A", - "target": "taosd-memory" -}, -{ - "datapoints": [ - [2910.218750, 1538137825000], - [2912.265625, 1538137855000], - [2912.437500, 1538137885500], - [2916.644531, 1538137915500], - [2917.066406, 1538137945500] - ], - "refId": "B", - "target": "system-memory" -}] -``` - -### Heartbeat API - -Example request -``` javascript - Get request /heartbeat -``` - -Example response -``` javascript -{ - "message": "Grafana server receive a quest from you!" -} -``` - -### Dev setup - -This plugin requires node 6.10.0 - -``` javascript - -npm install -g yarn -yarn install -npm run build - -``` - -### Import Dashboard - -after login `http://localhost:3000 `, then you can import the tdengine demo dashboard to monitor the system metrics. - -you can import the `dashboard/tdengine-grafana.json`: - -![import_dashboard](dashboard/import_dashboard.png) - -after finished import: - -![import_dashboard](dashboard/tdengine_dashboard.png) diff --git a/src/connector/grafana/tdengine/dashboard/import_dashboard.png b/src/connector/grafana/tdengine/dashboard/import_dashboard.png deleted file mode 100644 index be3704cb72d6c2614614852bfef17147ce49d061..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100470 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 now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": "120,240", - "timeFrom": null, - "timeShift": null, - "title": "req select", - "type": "singlestat", - "valueFontSize": "150%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "total" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": true, - "colors": [ - "#299c46", - "rgba(237, 129, 40, 0.89)", - "#d44a3a" - ], - "datasource": "TDengine", - "description": "total insert request per minute for last hour", - "format": "none", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "gridPos": { - "h": 6, - "w": 12, - "x": 12, - "y": 0 - }, - "id": 6, - "interval": null, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "options": {}, - "postfix": "次数/min", - "postfixFontSize": "20%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": true, - "ymax": null, - "ymin": null - }, - "tableColumn": "", - "targets": [ - { - "alias": "req_insert", - "refId": "A", - "sql": "select sum(req_insert) from log.dn where ts >= now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": "110,240", - "timeFrom": null, - "timeShift": null, - "title": "req insert", - "type": "singlestat", - "valueFontSize": "150%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "total" - }, - { - "datasource": "TDengine", - "description": "taosd max memery last 10 minutes", - "gridPos": { - "h": 6, - "w": 8, - "x": 0, - "y": 6 - }, - "id": 12, - "options": { - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "mappings": [], - "max": 4096, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - }, - { - "color": "#EAB839", - "value": 2048 - } - ], - "unit": "decmbytes" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "mem_taosd", - "refId": "A", - "sql": "select max(mem_taosd) from log.dn where ts >= now -10m and ts < now", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "taosd memery", - "type": "gauge" - }, - { - "datasource": "TDengine", - "description": "max System Memory last 1 hour", - "gridPos": { - "h": 6, - "w": 8, - "x": 8, - "y": 6 - }, - "id": 10, - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "mappings": [], - "max": 4, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 60 - }, - { - "color": "dark-red", - "value": 80 - } - ], - "title": "", - "unit": "decmbytes" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "mem_system", - "refId": "A", - "sql": "select max(mem_system) from log.dn where ts >= now -10h and ts < now", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "system memory", - "type": "gauge" - }, - { - "datasource": "TDengine", - "description": "avg band speed last one minute", - "gridPos": { - "h": 6, - "w": 8, - "x": 16, - "y": 6 - }, - "id": 14, - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "mappings": [], - "max": 8192, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 4916 - }, - { - "color": "red", - "value": 6554 - } - ], - "unit": "Kbits" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "band_speed", - "refId": "A", - "sql": "select avg(band_speed) from log.dn where ts >= now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "band speed", - "type": "gauge" - }, - { - "aliasColors": {}, - "bars": false, - "cacheTimeout": null, - "dashLength": 10, - "dashes": false, - "datasource": "TDengine", - "description": "monitor system cpu", - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 11, - "w": 12, - "x": 0, - "y": 12 - }, - "hideTimeOverride": true, - "id": 2, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": { - "dataLinks": [] - }, - "percentage": false, - "pluginVersion": "6.4.3", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "cpu_system11", - "hide": false, - "refId": "A", - "sql": "select avg(cpu_system) from log.dn where ts >= now-1h and ts < now interval(1s)", - "target": "select metric", - "type": "timeserie" - }, - { - "alias": "cpu_taosd", - "hide": false, - "refId": "B", - "sql": "select avg(cpu_taosd) from log.dn where ts >= now-1h and ts < now interval(1s)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": [], - "timeFrom": "1h", - "timeRegions": [], - "timeShift": "30s", - "title": "cpu_system", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": null, - "format": "percent", - "label": "使用占比", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "TDengine", - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 11, - "w": 12, - "x": 12, - "y": 12 - }, - "id": 18, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", - "options": { - "dataLinks": [] - }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "", - "refId": "A", - "sql": "select avg(disk_used) disk_used from log.dn where ts >= $from and ts < $to interval(1s) group by ipaddr", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "avg_disk_used", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "decgbytes", - "label": "", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - } - ], - "refresh": "5s", - "schemaVersion": 20, - "style": "dark", - "tags": [], - "templating": { - "list": [] - }, - "time": { - "from": "now-1h", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ] - }, - "timezone": "", - "title": "TDengine", - "uid": "FE-vpe0Wk", - "version": 1 -} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/dashboard/tdengine_dashboard.png b/src/connector/grafana/tdengine/dashboard/tdengine_dashboard.png deleted file mode 100755 index a4b6a7669a47aeb44734b1c8e3241e9439c19ab7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 177357 zcmc$`c{r5s7eD^cu24yZP^lC}Z$kD;QQ0aYSw4J8V1i&L;5t zHrLB$?f}47zVeT&686~^060lkE}l2`wwh#lc^n`{Py3Zeo(hB7b&Ba;ys2>M5wPv$ z!EL7x?mT$;r8T!e={xs^E5`3XpS!;Mgw!>&H@0RbInJAObKG3_+jkC~8H#pqR44bk z-|O+8j#joe@a1^-B0WC}_k{F}caOXH7q;6A78N;~!oN>J)cvA1ajLD|Dk4m)BTTJM znOad53V;4Y*S0~7`d*?DEOZDOH57ZjWR^$-MPL7%yM8>F_p)x!h^d7j&qFlsb{4LS z|DgiF_oNiU(e~Kt?AP?`rvUJNXGF#3Pf1gA(phh$^|rpV5d1Qc=1 zw|{=vU>&z*$+7Siu>beHbK6!l=ni%0m-9g-OP0$Ncli2cA#QHy*JW%E&^mOQYhA8@ z8v|YxX>4P4%UF6-FJ#s#Oi)6bZ^)HaCHz_eYIr3|Q&=xvFce~KIg@m}`$*?#%Bx;mHviGZ={e;OAh2-#zAV0Z_XW@Q2CC{0b_o0#08!g&73>&kv zx+HhaCUmWL<(o-brxoAAPmOKU41?X)>7NL&5r}vajb(^|Fu@$UgT^`f8 z4`eJq-CPP;t~t7i`tG0)W(@g0q4t7m@?CEzNi5g-1n2@S@E>C}w#+uv(bojFUExA- zf)dfvXZF&uewJpGDQz3dhE+7hvy8PA9H<_|{+MP&*gLo}G-e!&@Kfq_}6l@Y1VxNuV69eBIUjd#afY)}riA{(#p#;kM(nyuaFbWHuyf z(cX8CARC;un>{g^IHz38mWyxz)b0!(DO~JzcN<7e8BR?}2%YPHJZ5)QH{HxI%2(M_ z6h76BNRF%WTzA!jM9>Nnr~sM3TGpoR80!231S`%&^lp*3W&J z(9g2|Q|`?pmd6P3UY6dmE%3fCS+URbHuOuzd*86~qbLkfiIC}`iYO~N@ z?8W@;>)XC?@ABgUVdWg$ahb~Pdvn^5Dp8>8;;HTkpVJ2#-;C~6cI^-NA(x~uLXnUq zh02<-Syi^2&VqLhh^PAiQrDQT|OO7NRjfubf z7bB)?(WrUz2`gM3j&DsB0h9Bn7qW_=drjOb@{H^DBthjK4BC<@)t49F9@BSxNhK>) zl^_@)NxD%~GyCr^qTL$R7prE6D)qM>@GH{CRkn1iUGkjn70?iiE%sZi{`w^N6V5j; zpEuSctdiK#w5NMf!>rIPsg-DW`XP%(QT@s_lNG0$lw{{PGn@K))AqeJm`u_QUyT(t zUR<=HFL(;D9k=4WADGrC!g}vs=%>@4wbKw2-9g@5u7_7*#z?K{TLyf(cu|YVV@{%NSt#K$qCY|c|0c01MwnJysBCqC zDZFxcjIfl%?CIlNiuayNeYExA`t}}%WTAEvTn8R885}A~p%*b`NmiMtGWqiU%n>!8 zITK~~(HGkuLCHrX;%pq9ofXUG^_6;@ABALPxd>qHSE+hUsZC5--F5CR_;H}G(0%L` z-@_Kf3q_aiBVOGPf)1$r8aKqNJJC`H;-^f*W+TmA!d0j7MpHPli@?sd))(0r0qLHh z>mRk-s-}91%J0B(Xp^0ee0@Be6nG3pY3loVHsx6l}qr_uMONDD@ zxH@DM{vOSX2zjRhPZ=OsEht)6VxWn0hB-~|e|Y*O=Bh7Nt3_$>8i$Fg-|HpQ4`??x zK8}`G%^*=FTWp#Iwk^z8aVCR5Ri;*^S7u6nT$+|OS1mE7sb6yrGsC&6OwiUgfmZn?-p|Jj`8E~Iwg+SNJQ*HSk52)i#1a`Q zJY{+xZ$DE2SjbnsdojXC)VT-O)}2glZF^#1JcA_;5f5c5v<4HAX}Y`>EJY}mJPY@z zQ*8T4XSY{2W8woB=qkk1D<+bKHX=R{lL*d^F?Z9jtj4IKDO{~ua*AOB-8~ zug)8j1)*GyZ`W& z>J!M?6MwewM;$TUARb?DEWlww*kwCZGX*PzWf;&2MI2?CO%rYA<2a7h*+hUI$yqGIC$O@xzw zj$~yW9pI_C=%Jpu^S4s~{xkh$u4^t4ink;Z`!8$tpEAe9yw4o_3eX z78hJ?FW~)=>WRp7JokA3HcUS2SzIOzkQqPeWVBLa)MkSFnCIq%aw&mvvU_Kjih}=* z8Va`Wj+6_-N!Cqh`t7SuWJ_}Wy#(QN)1A3W-tY1U1bDSW4;-Bzg~tTkCSH%;SlVYr zsZQXtkd{;ps+sLP?;d#7%ji}Eo5IITqK@yxNYuwJ{YyBmFTU(2QNxP_&f|=}FF!2WXJ}Lw|#a)zb0#WdKgP!nEMPq+wL|xsk}VgA|Cyo7HX7IPD#Mc%eeO# zaz@AQ#p#Hnx;N%^S$zO*VOy@5hUtV2`SqdNEEehfy>A8tBkmR3hVEMro^c!-Jm2fs zpEn+JYj)qfEhJpj>)wZykpkMuSg#jRsFL&wZ{PAy1(ZeXi+v{-uyLF5^JB7apd?If zxP(sKmt^5jj^nB>7I9{<*+CcgxXp)DPA;%n47;|pwtFs}-V_=}Tyyd%_*|**wTX8a zNrQJ=gM?T=hUTSb2lLZwJwkP&kfrH~Hnu>9R;hOH6j~G7(sW-8HPt9YT+@eJOZLxN&s1rFY8cqfPq zNsD#CRUfdiEwZT$m7k6PgL^cb3KuPcSklppEC&C^MMTs#F@8}M=d`y}PpE17Qz|QE zLH=S;VLKU4s6p3gde6KpOz=g)FFQa@gQVMs!g|m$@DfXo#<%97CL1htALw9<&#aeC+sb3^bFnihT1zT>-10fcMkLguoy(m1C zvRvyOR!NE#UA8taY;FHL@J>6KS$PNUl*F7Z-MOskvXsnZkkR2mk$e#kK049!K1vE) zGPz#aOj@vg(m}Z!^^5m=)a|F+EgR|t)}T~`_gJuH{qQAZi+vW7-V6@n^g%e$Kedsf z03qCBQ)HC78(>ONwNWxWyoZYYTaVrl#jAV9de{mBvgRcp`hX686SzZBPYUHCCib}= zw>6>Jb1X}JG$#-%Jn6V8lMou1aodLx3}M&!|5)Ps5}4~po7#@X`Y%ffY;`)99u=FC zS7V5z%L}j#Vl^c2z0do_^>8choBmu@jp|YG%2cb*tIrRDWOdrh`88O$Tgp|EA^dAD zeDJm$*F%EE7wg0WD&8G`i{SJW0k#rnDNN4ps?!pk;{Lswpw@JlLo(`)7sV99S zUZrySowB?B{?DASVg#ujI*I{F;kLzUMoeh%%ajbSi&rPUJNF?XmoD@nEU34y7g(}31~R6Fcr%Ha z=6&`AT+KCrMZdNN&M?;7gDG4r2E{p;Rh#*8#Et&$5;;k zE(oMeT?exX2S_0^MMQ1cP-*j~C{%9h^t)pIhLW!C5~o2sgv)$L0X=w*bHM#Ed6S+h zL$VU0WEs7=G%Y*TY;+4}>6xIAuT-(Kxgj>pLiT1SPk_RGR#_~}>~YIHzxn|yS+}kC zSp-7EaA5N1#5lNR&*%h9UBpUfnIy>*Ao18C0W*S*nw-_PTKB;BQ5+k8ITv*wC*yun zr?TeHx$nG*HD4|Z1E?7`qq)aKnzNjJg@r@36=;wuTOePW5}pZ2MqgErGjHbq;=EAl z%^Np`pZ73cA|-f)R`Ul?7xj4)S|>Ym8Iy)E;%Pl;)NAFv5mPq9;;*N4(v>9j-tNDY z9w9*_HXYpq1aXIYH><~YTvNI+hHsehrK3nHB~^-0=hbXPOI$>=G`}bQat1JOL3{Usi=5VevZ`x0v1!WQw zfJ!R@d=%3$F}|A-T}z3D;=+Mn``FV)M@a4ofveo!xLh!OZG10CKDR(7oVDQPbI(+7zB~nUL_!{=5r@g+A>7Y4PttZjUDQHV{fwQ zQ-0QMB!P2#nHqm6CnxFZ&+o>yt+Nrw&V)jBCdeN?ew2{f*v=utePf}qw|;@2v2(oZ zGiHjp#d4#h-^56m5-PV5C+`<{tQg<-ey^w zjQz;JvInT#T!iiQE$TFgVyj@N#yMPHtfp5z!UZ<}HCWaR%OUk~&MUffIrpsBDvxif zX6~QXJqBnX#wJelI)RLUQ@m*Bz}UY`w09hV5EK;i{FCj49xR9E+hj2EuPEKRmbi22 zp0e-4{e;skN+>qBK!FUT|CxT>`o}tjmg}A(EXGu)LDGv6SA`%5#lZ8~)a+*kFvS{VLp&PF~hpqPKlu zQ(2ozg-3rL=MKL)hO|ycb0VZoqZdC}p|#F9Jwbj@lsGB^kbQlXb1YGx9XN_3*cA6f z$$h{ghkXsX^_}BVI+(qJT)g?J6GD&rX+MJR%q`+UjaM2$B8twZ$s-a#LxeY@eITBd znBe539X;?qU#j4aMM#EY>dQu2U|>MI_0kA6UQbMfqk2egqk#hR<}X{>wnacra@=$Z znfCCSZ9mO6%W{@o`}%2_A&@8(&gXIh*(QWNy6f~62N(~3 zqLC~SWxr{}J&m5r*dAn%UR=AFmEi=3g}M8<#~&W0CVOO)Pv7k)k%+MAzhDt4PDHzx+Al2y-W|{1+hT9?9a!BAT ztQTLg@uG@s8np0k#Z?DqXPzykto+!i*>P9A%8qFoltlj<=eIcdmzEmYwU^H6AYolP zrGodJQiLAq3ZpE&iWo=U5BU7>bHfQz-;fZ@XR_lj`Jnq+T1EuMm0#SbSv=k}h%Xcy zubDB^l~4YVMH~v-;Us}=c`cJyD_rqh7h`q%<7jd`cOV^2&xY3;84_zXN`hA(?BpumE(=s>BMFC$*v@AP_v>9k+yZRwRkC9J zWd`*kjLD_aJ7UY-ugM+=8>mGB%rMSO*l3U|q1dwL<1nGv*RtuF&*){l0@g)F7`_|w z#oAnxma|zwxMSQEosDJO$>76I_U-lY!`D6wt;Q6KV}9E4-sL-Rc0as`gGze%Ml3h* zDu$H%Kn=GLma3GeX3PEdmQI+M{Cv#M?#OU1S7*Nxu(XwePV5L!+QrGv$&ad=J*tbP zpb>;e#vAfHmLGn|L~z_x77twq4s@2tkjZ3yJG4paPkb#LP8}doIlghd$&%9JxNs7K z>kD5}2HL(jBk!kiU$9DLe&BZ%i=2il>0!|tp0$ygrw6_SHtOpe*)C40kLIUFeD5;2 zuhBbnY-jt<({tVk)O<%ax!$$aHvx{c zE{0aWN-Cpxj1M=>ClN1gE-mR`=~%UM7QKonIh4Z11YHuHZAZ9m4zWqRzU!EFPu54i z`!ku1sT!KXtvbC^xt3GYZ|Ni}P1IosgI+*p;!scG8r=Q=X9q48n*|*u= z)=!zf(>n#YoeI(qO}9v^NB5n*%B~-98i~uys&m?ZLdlCyX?|nEJI(Gc3>l zW$*DXg)*JMEv>c$=7RlP3t`!()xS#GBr~#)Jq45J1Gni4OOARfHZ1}xIf3naP~)q* zMwzcU9!BjnRl&RBYr!~XZrq=K{@kz~@72Q_`salK&BeHxkp$+jWO8v&ZQ3x3>H2gw zQzWpm2ZD-PL%Tyaj_18|;O67?^P+Se1nRbb$ZgGgAit}ty+k&Su~Qbnq2 zE?>95UD6ko+z8oWI*PKSct+KjoF}WQ_I7>7;*~H+n7NjBW`QNn!)Hc*Eb=oc*#Jt; zMXc=C6TP%>t}o&$WP8J5I$b$ca`$-l#87&IR`mhHVLJ}(Qb@#Ht-97Q2R{%yXGnxd z$Y#RrZb0)35juWPwmqd{I6Lu_uRMm|L$aQAX<&-={_#A8;pf4_QI&*aoRLIW4a#RJ z=6$?f;|NM+o_K5_r2AfLKIEll_Z)mVVVW8EZW3?o665zwEtmcLGn_9ErI1z}#%Fa3 zg8#fo)8mZAU8j3;W+RfJnmg^hv9$UCY?!v@d4TV-=2M2|#YJqL34nLA zieL`TI)#uhLEQapnv?nW?R#JKAloyPkL9%!_i?&jS#`xkKD9Kac>QPd> z3|P=ZktUidRM4p!k-~?UZ-xsWxFnMWTw> zkOZ=KqaWsXVsCu^bdeL?bhw3#e#M#l1_@GQhs1_eYD5?nvv=Znz^*Cq~5!eviPM} zOpT?=m@Kqz9JwGnwX-|^Dv&|xgD&Yi*8?~fojFnoKMo;;v{c}1PXk4bYNU+K<~{3z{1(1q!)ssnHm2&0zSyO zv3y=F8dz#X(O)x*ILm!PVH)(eYRsAP0g~qOl8sZ*#AT&hGY%tzfxII1%((D}5#skJ zEIu$6#ZPPDwOxn_9${A&r%mH4T12v*qG4x6B@m>An!faV0m4#dP(wIU9>zg!^WvRdA}9uS3;ntx1Y9Yc?@QGibGjOSEE=4 z=)PV=(u-MNX@rgCoN2;q1`)E`3WDXxHX`)dw0P-}+03Y_8JLxAkBlf-1~62c{j{(T za5|cnm7+_clt?Dvcec5tHZ6NdjO{m3iYutt(do}l4EmV0WzBtGLfHI+$W1rb4_nb^ z&R$;hB!NZpqeTcz)Pz{rW_5vMdS}`ig-ed)w%$pF7qPqQD~58NJ9Autj5608QfK6f z~u%_VxM_8N8Y@j25yuNqlEsdz(8c(RB4TT5)K7KWt|0x^Eq4lJX5Q-1jMw&*C z5K6ow)KL95%sS_eI;65c{N>bL;WkZ2S81vXT1ehw)l*P*P)#FHB?89`UinR{OYV#J zy&CUJpE%C1;cbQo#*8Ts{cM zgd|Z48!N~+%5RB&z-MLkS`ho_;1P2#z0hiOaJGu}yZDnT3t=iRqtR9;IQqqry>m<& z`WC4nP;Z0vLgRJ|$&~35b0n4ASJlTE5!c(#q>E_2RGwGKB(L`)Rf%&dz2j{13nFRO zhn6Y1g#WX5;vFNLzH-`KJsoD3coN#kDkaEJD&H`{wv@dMWBT}il>IurEoW)?#zvUOZLH3kloeLFAyqc^a_MO+nA5IOtk3D~ewFNf?1?*=X4rj~lDh2Lte zkLV0g!km-V2QtdfIf+zHh1nfCwSAf;2p;|PXpm|jBGq1*Cv%kFTwduRg6ZccL`6+8 zU#WR4+$B>wwf~u_*=Gw?XRJ#6eeghzm=|jCs3*(c!oWkXvlsHA_JE;d6nLI_vPY3r z`MP1mW2(H(6lIxJFep_xnNzF3Rn6C9T)F!DtgA9Ais}=LaM?m<+4-r{E8m3BjEX0N z8fRT(|E|T1{k7U@b3^B!X?Zqgk+-22wu}$H2ak^}FE1voSr8BU$D!^pkLhw^35~b# zXIi@c){KZ!q80h=&KeB=o@0m-9tyZh>aD--4hIlSd2ZtWYjhB^-W#v>_J#g(74Xuz zRH>ETK+#_fY~ZDU8#h;4{8YHD!7uBdq_owpx!=u9;N`0~K^@-y`MdoLy!0jw>}kns z{p}dwrQ<~;_?auqXZ17kAe+cH;hflWnc`UECb)t3$i(qB?UyH7Av9L5h z%cM@g|9cISw^L4qY(;5th~)oXO$RlQ@Z(=DcYcNZw`waI_Oky)Z=OHOVAKAk|1$H3 z4gFUCcKIdoss?0@MF8(w?Gg{bW-%O{R9GPxC*l(6KB?$o?0(pK$-5 zL#q=8l}uKL&e;W^SR!Tc5}E=yCjjiANPee@3M9g|t$cg>#<5Rs&(aO9cMpIJer88D z)yL@OO$n_azSS7I=kq!1w-)a8`6uA56XvVMki$tWSZ8wT5_LIhRlq0*AY-B^Q$B9H zN7G6md4Kl4jwK^FoK?wg!fsrddSrG4ft|Cuw+eXzVq;Tca&zHNW%6BmHj{m4 zo6fIjDd6iF=Z>vpYBs3qmenN(G`|ThIm+c4X0fUCwWLyQh*Iy7#a=&H&HR}k>yO;9 zRM*Zb$~xQu5ji?kNz~QSdJQkW+_^PiP0i;fs^EREfC3$vpn!P!6r-uavG_MC6YDDe zQup@9p`IRHyP7v9Lh|?CO_Hz>46N^vpy17RDgqota7~HFk+bwj32j?6Oekg^tF%Ow zjaum)&U(qcvfhAZj9EN`s#yab(BYl)dij8J15NTd@UvNIX^zoqh1dDS)Q(W8uj`XLdysm^$JptgkIjqmk*y>N! zEemtg8&nNzGtAsG$x^FRN5ui&L%D?41ZKIaTaB9t0CavRo6fP5wyl0;m;74eUfnIQ zPu9*wL<8S^(#ff^cB;p(&a9ga4`0{v8;p$4LS-3pFf8HalXjB(@PcX?a%6hAus)Im z097BZ^||@<(jzyPs=EmSN=k+is#9m}RK~BWk}WNDGs(@M9d_`6co{I5C<^1Xn#Pf3 zI`bTI;c+oBwyzT>H#w zKRq1JQYtPZzmsUJ-IB0LmZQ~VFJA4gqvF?&j-Z60jwG-w$1w?nnU<(XZuU>}EG}XQ2B;Py(f=&t6zaYi(xb9j zgSn%h2ICbydh98h-!}j+Qy-3-%WZKDd$=QD;{67|t)5>`vxRSgrBwY@(6B0{tQNI2 zgLj_pI?C_AB)MEG-WP5JEl(Q#t~AV#n~EK)gWC7*fInw=Hj#$wg1R0cFNLBhuiBJK z?yAfsX!Hu=GfhGXiDfggBO@ZjXc96D8p8+os6)7CniRv9zI_%?SEL_LMQ1r$WA|g^?c+VX zWFx@iU^CSLl{2QgwZ`tro|8~1$SUNVo1!j^Jwg2U*$CK2Ani!XFulP zQWBP;AZilnkFojPjO#O)zUY$CulY*VwK&VhrXRD6C~I=FXCNohlUsw2#vB&WCs^7xJQf`ks%?`tD9uUML=(hDDYC2*5D55 z+7@Q1gxrECXg!J7w_;~|e%2xd1rdLC9?OB2=ZSP?^KYs^w9AVwG(l$r2M&XLWcYFX z!%X}82^xsoe4;8RCA43hAu{Zp$aa*fFmZ@12&`A()VH50H?uaZNjx#pNZrB8$Y~+y zX#ip>I9-F1rJxk93rpRK8^tgL3s}y6YBEp-N8lc^nyKiL=E5-Q=k3p5RZt0_kQM2 zc$pMVj?TsUxdeX(Tsl2t-zgXO?Vzmme^+gxyl|@YBez54yj)V0xBG#GvK!{Ay&nDW z`&m!6?~8@!<+?aYM6LNDlFA#9ySf5JK|(UjO!`#1%d05VE<7a+RyB)cM6F=f!!{DO zJ3gx9s5`J&Wxu9n7(xXXo3QOkep%@3K)z)Tt5te#0hL8ZjThQK-({6 z^|K8oqPwT#UO)K@JfE9anmACZ@{Z`3+cW(LD;g1^YZJx`1Wf*DSgZAbIj7R~=AoHjqlyJFv(xa-kl=?w-PzCA_l$I$bG^ak( z@Vi9Y3=8ffybu5qnt>(pk(TW`c8oMkFPRIdddOx(O6PQ8KXDi6l&raAdgM6Iy^c++<6?gd~9rUf4>n+U2t`;>J;cW2gE&_Sbx#VAW&pC3rdW@jatHP|v3JL>$jF0{LLBQ1{SoMKY z^&Fw~v4N##-gW8&_=6I%p7-5a<=8-C!t}p=bvvN~cD!^|iusV#}!?j%PWh%%O!v|oW{!Fm`7$)mqS*teb@MuP@1 zJ1tn+lC1xF9&9GxQks^YUW;>)`M<353~~M8q^Ex<;eW3)wI%9r4g}2NMupcD@P5yF zCMp+kwNGwZu=LMG7P9H&a+ku9Phfpi;yTw1*eALxzv0KnO52I%B)5sAsN1B5jq8g1 za}`2D?9n9dg8clOV*WG!#!a!$b;Nv(_nx}#3{@3a%Z~#r)-7Qx6;Wc>D;)sUQcscE zr=_+20^EPtEwP`7W>PF8LE_wbVa*5j>;0j%=tZ9Xn3x}Ki#?0C9{1RGqc|Jx?RPLI zMgI?L=h74Jk9<{-Ov4UsTHH=SdRi?_y27?=Mgkv6$aNU9|!-mF_=vTMj8X_ z=E`~g|L%UQ8i?kv^k==i@^bt7ym}xKfDvWOzd4ioqO9QhONap(e`xQhV5$1Qt#%Zc zI=>DSe{M&b37fw4H_mAN0VV(Afg4=ikJnfArxHHNfHg4u{F|~@Y6O24yZ*!EE79WL6#hF*{mac-u&G7M&4kN;wqjrH z_YjehsiJ8NjzuFSrKX<1m#`t|+|2a6Q&4#~@&C13SFt(S6Fe?A)MR;FxOwwtAO&-) zD;WxzSX=gHbm?TVoX5BQWazo%bs1K`v{Q8vc6_PcY}1!hrTJ!f@9aB8^a2qPV5p1Yp)W;Dv00Non5FpTUxr(WU4CQi5UUkn z{8P?~Sg*_Prp*1g`%e@fno0AkF!yQ4@xGM$BRJ95t5|xSU(H3o_VoS27QQTFxkz2YTDWqK?25AT?^f_Q1&EMi`=v}In`soL)45!aZw%ef=gX29g!ef@Hz+IK&GQcG74+hm z4;r^!Ie5CR#OmR?zpq6WserZ@Lh`l@8pR}53AVR!{ww(>hpIxtT_rttRyA4`sI-4D z3#IpNBDTC-6Kt@^KJ*1U`(So&k27>j;n1nG#~S8}DtefCXW_Z)-u2kzA9fbQyS6Bv z^Y3#^@E^sm_~^Sg&NL!6SQpD2;3oUV#_xueJ#g}?dKh!%-uT!YU3oAAZ~88>?UL$_ zGk>s1 zbfyLc2J3na*CS#c$T>i>9#Vd{p<{1<*GVgU$CsXaHved{+#GJw-Rb8WhzgD8V9`%^ zdQW;hz^Y63c5i6+3_m*5^-Xml^bHXcUD*?zZ`z&Y^?Zys9}VgMV@pM2d945OQLNNA zRp!GtVX-G>gHWM@yST%qcfu;S?|xfc*{qmTX6|G1Zn^S88=-8h%E3}%>bqnGe7*Sk z*l10GfAg%pc>eyIPe|~$9;Wf`a?MJfC#44Zxo?Q|dtqa>yWi%Q{|43t8$YWjNZR!H9;J2DDij1HD} zcqnxHY~etHO@3hD(JY7E_CHl-X?UrJ%6^%Q3y$3Ny5C6bxTin+n&xc+``Xj`!v&7+ z+<&hJ^YRa#^?UD}o7mp!^|WZH;tXgLP=Cb6-CpF}!Be;&IKv~2+ciQB80{L3VM@uD zy7l*c!Xx?C{Kfhjh;F~D8h>oz!a+~5T`Ai#^>_zOmC}M-VOTy1jAbVO<=k!zgD>ads0N18{5BcWctKc?kI?PEYH+A;V-)12ckTJ@Kb-{tS=^O(K0&`W z%ngvwcho>oD>UTZ&%t2X$Pf{w8nAN|3TIHTx<*Du-U#r3!QR}|!My9TcCY9a+*Ly6D-TEt{bbHo5*y7@m(?}fk*3QJc zZ@jnk?oG*7UFtql>Em*{0%~?*YBc2=d;`ssXa66Y)Dd@{2d6rip4?2sPX< zp&6%aCI%IQSxOoylp&lyXNISk{~XqlKUOKxc8dsXM14>Oe<<}QB#A3Km+A5#8M>#jsG;j# z;%f1#dAw%8&ADOg@Vzc4mxn${K zX3nm;*{rL}ltigzhE4H8juje9_QjQCih_lDvo)))g3X!}Re#>jtp5Dq{&R26 z8DR@VWZ%BO9<&SdB)D)Ss5H^%VNd?p3Jvhhcznrv&=~~JUU^CP!JiPjz&0yai+2ql zL7N1eZ{)XxkStE1)S5;99+d}Ngp3Y_$%r2!D0dWb`b5*}9D$5Q_rAJabGe9O#^t~) zG-=ny4Zzha|0LvtKTc<7rd^$a9S~PKP;UZcFm9_St9;yPf^Ac5-gbUp>x)-?eAa;4 zB#uYfSW{c0wtqkSbkTJgz0}uT&za0|uJYq?= zy};0#`mMX4G?;TY;99Oe#^?= zDkK@?oc%jm5J8z}OLMe7q(cr6A>C-S_7`FxJ zj=nZs7o*>vS2z>UJV4<*JS#9JsZi(Yaw({Es@Z7Jg%P?V^D{=wE0yPrS1<_sZ_-d& zw<{d1WTqnRE8rX2G22&m+Cc$f+*I84L*kQPg0jNhb^%U;lvjZ~%MG}3N1Isiu&v%k zYPdX(hWK=q^n>Qi-~!&i{q#G3I_I!enQ-ronr6O6(m+ry_;j0#;#WulCJEX_6AWue za&nS30$+6+I4{iZ!qorW!2d3!F#O>QUh$*7k@my5v}_tFT)y}3&OwSd5?G1rM%%g( zvEF2{Y%#yo=EV!kFDMS`k_MJRAV%)4JOrk*ZxnegRV9z@!)e#t1JnwWFBr%^hd`ZQ zgMDmaoGs>Z=}fRoWyI;eGXS_91=Ib>?q3Ibpwpc$&=>pb!j#MYC|Xl3*iSPgtzD(s z!a$#4Pt;YrCEvk23!6)rKN53zu6ZQikkpESGV%%?25&j3svMb5k(W%ORFA3%`B*X= zJmm%!!|pBga;W)jZsbqd$u(HQd#m(k3auE5KvhcV8@oYKB;;L;Hknc-3M>2T!M?t` zqkW^V89XG zAZY^ykB~PGfQ7PufpbEnMSixvBKZE;Sjf0npKok$qd=Tsj@P~M+2=~2)UXy$C}RWg z{?_ zi0ZMiEXV889*_jZG8}}eB>LL!iat|0L`2&-=3oaV(-)2S(3-UK(T2i)nPM%xrEIXg z&-v?5Op;1T%OBn-osz#ZRLaNcHZ|UgryZKbxn%bS-58u=W}P)6CRv6<(^9-jY%!86 z#uVmtQRv9q^tKv&`L_LZTf0jR_~$k9e=g}1QK0DwQ<-m;1t=8q={C(i`#uAQqOKCC zIS6Fue?vfNzd{rErecAtUM3ck?vii@(^u#Z@A$ceA*5kO!aS+WmU>L~PiaFQD9rd^ zsffFcgmtFSJL|x`|pudz_*|EBO>O8&Qg&3)nr8DyD*lYzVC{d`*;?5pM>Kld4_w0 z_D<(_N!dRCV_zkgj?C2-#Tb zGhE+$bSkGsoy&D#2j{@4y9WK)l))+Q>)fKM8H*{OLp}?FY3d2s?U?Ha(dFK;V|fVo z>%~zk+@bpN9)NuMyJoM^Q7_sKA7^t(BB=fJFm%Qn`}U5-1P8z$X~txcvpX@*;906{ zo6i&y284|Lp9BCSE%*h(XQlxfY-{$58uhy{#<@rz$#dOkFH$|AH^Zl zQ3zaUmXnhfsU6XQ3Enf!o=_{#O&2g7NY)zLgmg$#_b^Z_py^LaZbX5Rcv}Ie&%#kp zF+nW()7ciq;3C@j2R(`H)RzeG{f7z%bJ*85_>wZ8%qhA7DpR1GtX$9 zk}$YHL=0eyYpcx6GzmVG~lyB34f|Gbochx8VK{tH)K~VfYu=XUPbBtm zJHay=%qBtn;jZs#XP7v1e-x=ur9A_)9K}Ok$J#oCfg*X#^W2{$A5@|rfn}$cFRH8; ziCfZ!%aSBML7m6{?(-&B)R+LwN{O3u&4E|VIxP-Gln6S7x0#~vY)RdS5OIkq^?IXE~t z4!_5#UhmKMcW$@-tj_cK7}s^(*O8Q}bLY`zPEw!ky_&u>dkE6100xDBGts%m>My_y zd|#2D`937Q2i&!A5xZZ?S~!k|QnYmw0S*-w14WtL^!Ar(t|wVZmPJ`G;B2dFWL9YT zDjLy1pvyk_%0A6gN&a-#+6wkcaia}KhY3X?kon+3@$l5XZVr4`yy-j~h zo*zGx)<@~d-IchueNIg9ln2V?ft&CVYK3DTz8dnql&I95z8m33zE^i5z@sKQ1~;^l z?U?IJ*IGDHZY(DUXq8-7S~D&hYB|2d#CVbjYPn81lq1c}!mb2b0DM56U9q;;@e0|r z=iYRuRra0m;W*x$+KDV%Ad^G8eB9h0vVxilAX-9sb5jZHMf6Uk8X_Xex9!Y+sZ^8}w^**w*px;AT)* zdc*^CF3Hq&QUIGL!*oQ~s~DdwgRFnor^?c0h*EZE!tguO&Jn7SPhOk?-NUNwpiwW0 zCa=rrAWU*dB5mr4qO8Yvk(pm^Cn1aD6})Rvez*EZmlm7{N@he4dWE|Dj>!;WYNbsR zvvZbLNHwiq)RDD+|CY`{NHXbXn@10R1J9ywfC0<$cf~|+SEfiQU!O)_wpVf$7*#j!xFK3Dsjc3o7TyyN z^Ugzx(-y{16yguwJ3!o6pq7@e+np7)0adgi!$GLajiUe-`#1L}U(=(hIQq%@{8t0i zu!76%=y|MrY~n9%r8l2rt8te1#zIrS8X-nbN}(xmFHk^T-(5@?xumbSPEf63KG@4) zkISq3{Ii}j=1CxuZN~OU1^s0smF*V`cQbrqAd+1GA_M;AR&5Hui4gos{R3?K7eRi3%Si(NF&Ft9ghg{`K*l&A?_{kq2Dw+bA#D zz4<9y`~0x#R@cM-w-~_=w^IL#B%lC`ZLSv2IZAOGp@5k^I>K~Qtfq(;KiE}Y3WuTu zey)B1gHj1Jca~JeG1t*ySXkTN++tr;S`cGxxH3H8pFDX(30t_|*}9sDx!#|CNcOU& z-Hl%C=ym+MPX{r?5OLSNmW+A7PES-h0#;QctA9Tl-)dHnAtd<7}tIW6D((+^X9e0ym)LG#W;bLlhxvWA}})~IJF z&Vp0LfV>NFrJbTFhU^!&?DE;z+P*(T$JA}&F?n5GZYNiUvN80vPXcobOYCY;wFA0IJKbWG9a+hn_{5~{NVaJ;5I_&az_xkI&^X=PEUPB$NP>-f0q z(mv?Ov*J$bqtZ2XZc3;XBxHGv5?Z`%Y+ot91RWCRUUvM*K=`rCMx7a-?@jPyPLD9^ zBknHHvIIx(z!xLD0VoiAxk5L=C(;3qCIw};XVIA+sA+kqWzx9_KUh5FdQEbZ+Og<-p{I}?j?)=)kUYJCr%lY$^Mh-D#_ z&WcmoFFD3_KTq44bcWUHbfhR>e;uX7Wn_d32kn05>e)lwLN=MTMiz?Qy3Wf|9n!0C zNhTVnGEau+$g1B9nMFf0ocnhY*|+o+r&4b&T%&bF(_krrhtXfaP42FzzUjDCT%ih) zfkoEZT|7C$A7$(PcV)dHC1=!%VzLNWl%G^JCv*VL1zJ8Z^?j!)q>72ZtJXMLcKc8^ zN4__D5kHnix&a$)RcUG8pHRWm-`pT2Atrj4L$O^Q83PjRV8doZ$F|HxobTuDz5E0_ zW}9~xPsYW~HGg&f{KEd7{qg#I^Yl7_r)C*T7aGBUE48<=^vxpA_8h10i3=WgZ@hN3 z{ivwS*gm01h!C;QJxtqPg1RDt?@!8WbPlI~5(xwA=PevaAK2v)h9I+1+g-V%hl=0^ z0G~~<_+>FXHSTUIJjAPJfv829-bnrToQxq5{hD{20$li&hG^~ITjNosFz}qJf2nl; zIx3HsSX|z0h;JgH<)-oICZG98)4h-B(jH|4&{z<-#iwWN{H6w{LIuiCe^Y|2q=8Fw zuR2RXJd=wKkup5s+qNdEr~8d#h&y>z6yAr(SC5AmZ4-}Sq2&nGl`4~55ysh{nRYi5 zAlufU#sBvEDbhW__mxNEwfT2X$gg9#TT%N#l2SZEG)~APLD7{BN=LBBx!$odF#fQvp&NxNK@lv~gF6^F6Uoh3t~qvzZx6cUEZ&0x}NF@yV7 z6jYu{mIT~i*P&^AVXWFh9OwSnw$^id*yc!CLOZYJRzd8muDQzf{*6cL$}SmiAAfwW z8)}H$aff#0RM*!!-}lyOUDAe_CTsG<{hZ*6Dg4{hTQOd)Isenh1Ks=X{4rK=!FG0} zH329(zt_U_F#zYW^nn~_A{xj(N5l@lGSkej^?8P6-@SuSbh4|p578<=XTr*(MSc07 zZ7L48YJJu2=HuX-A5bFWdD!bGBe8sWe%g305I(VfIiWc(q)D90`-|T)f|sZ#V~v`; z-8`G5@wM&7`F9;*Fj$t`FfbzJjQ6ur8<1FIy4Lg6wo_6kT_Dzq?O{E&VAnPwciA zUzTR`P6dMvEK}u$tonx9eqCEdT4>zWOF8L_a+!GxrScdjq=GL)o{eY%Fk=uwaTTHi zt*|zjB72RFtm-wdvw7{Ub(NZz8G^_>&&i@9-Z~r{HTT^V=w%J7yX*I_M$0_sjkrpR zrT_0D6)S*M-1Hk<8fYsf;+OXtmQ~t4MOw_y64;4uL(j#YX_cQk)=acIV8%r@gPd3Yc+IoB7f@ehe`6K@ChH1>Lyyxdq z;fQL+aFx9$KuhBPj?ixmnrmt__dPqBn}2Rqo1peVi9b_#r1eKa%bm1Cp3A=qVYCx) zxVYAi4+cj12BJT5kftquP4q#IEtIVS+!Zk~u?Nt&e=p#8fLnnTqsXkzzMquKdrh(PIUP8ccg7OEv2qC^bA1UX z=-%xe(~e>zbcbqQEDLzcR4NK_MJ{h9-Z{faHwL|VvwmS!If1>OqRO2(m)}}lya}#vy7%RFU9n$mlnlW>TE$b zcL^nt@|GL<4SX*&#V&)@_sly3SuCXWB%qtXgM*-e9uQ2+tr&9RHjVS#t~U${Efp0N z?XI>NvP3s}Ssk-s4DrBE+yv2X;?Rc<|Mwp9-<3pgO!=LhFjYJ~op-c+EyT3n8X{%o z`KGX^hBNe{sY&NCtb591?Ypo~=EjCDR}K}fe=0lWfm5Wsjwzi{NfpFr>UBEPBE@4u zoS`##f4+~q)$yVJOg|vMQYuZ-bx4e!kmbH{PT$EaW zfzO5D)ZnUQn}z+hi^(d#%8M_^8TY#Z7@12ywU!YOVLAX*VDy1fRWvG-AOadjYnI2> zY&TLSMh7~cL?-gYf=aQN}3|%RQk;UX!D{So#=i)Fo zE;#fv)N^o%-wkOo*rmp$h;kqMFum@B+gjb3ooeRM);RKZf~cE$${LCG1J$Lw(IV?{ z-S-QvV>A3sis?rr=1O;~gZd99Day zXo(6qjA<9qtX4a>&z~ie;f0!YrkgpubHSWjT}r4C$|xM5L4$y12IshfY3BmRzAYP} z)_L|L(x}2LuyEsDqZ$nFk`;$U>ee0XliN|)^e>gzyvRR&y8swOd945tbk{b7hYJ|m z5&@zNQpLn!x9qzzjY<2f19D9*=s-kgVeh~rIdSw%T8D|Zb;rc_ouXz3HiUUB z7)J#DcVulLzMi^oYE(-XWJhDizjdsQYl5U04zO${e+s5!{{jSAfn;{z^8S5!>G$uL zNP+r-0q^tsWkv{r<$91k`HjQFB7Y@!`X*9GNGrpYzZ- zo$-uxIH|Yzg;RUD<#P7O&)FH#TNh$RG!>$!SA8_)%4As|E_&f#AmFN?CkUVQM9%VE z``eojL$;0VR!B==__lP1*+K=9^)F{}uAmaVpI^^Wq=7_eNzpj{74^jHlAqN&-PJ8M zylzTa)+@z!)PrW|#e7e~D`KAniQa!WMZ~%Ul}FW)#3%~@l;QF4vbIs0gvts}MM=h$ zK)BfHf~@O`N?Uj%L}krpu>qrSgA`)A_en-S|IN0Y5Krw+CogCfMUG-`njjjbR;p@Zim0j~ec63XjS6SY`@fMf zWxT>S+yrbn|E{WisEMu64)zEf`ba;Mu*3A;=gB@zzZnp_03Vg}$^Lc#80g zhzoaK-M8vX1)h=UB)W^9muwpfwela9X8qm3J7th4iNmf`!rG(J($AH-ID=bl==2?t z;-PV5`GRVKL9t_k0_hQb@3??sC`tDaNy2`;zEbQdS?#`}5vRjA5=o`2y0IUn$0#`I zj8^fXt!F+IH;|+pvk3a%A(7%eP>`+bVO#dh^ewp0i7HWu6JRPDF;W5Pz6e*sqwB3OtyivOH1Rs%Y z!ybZ6EgG<#OQT{RrW@#6^)Q0{@$*Og|3Wrtk8eZp<+PF+mp{0{Ci{`kgxOl({FE@B zsJRa`Jv2i~)ssw+bH)Hah23EYsEHuODqRde?gZo0Es2Q~Y}R+EU*gu<#5xZB_+f5h zx|IF}gox{X-1^s<>|`F=PJq*E%9c3tj2JmTobU?mi^j+Dc8PxT$d@oc?RKtkr-)l5 z)MhAkP7;ee`T4%!HqVaB{WMPcIjB#E{i=_83Rh@oi7?@OY#16JHTg;Y{QCH~W~DjY zy{BdfZyL4Is8n|Lk@RN$yE0N+C|4+gKSoK?>%QbfZ>yq6$1(-osmsNwUXEh6W5!u!@<+)SC*hkRPMRh@%f(LHw(MIpUN z3OgIm5D0ghaqzQMDE3dF4`^^?vqn0A)~oe{W&}+|gaqAcRTP$WPrgP(vqrk^i>+JBas<3XbIJovM4AXQFyaMr{UXbvE!Wv+qPk>wFr$z_U}deug5tlnMhOo zcS8MFW~2RgtCm{ry3p<@i)dN%#MlvR{l1?=1BGd4HAg)+JNu?D=i}&xrJH}+;`Y;Y zu~ZDKX+<)#M)sOj$VBGnkBe1KLb?F+A_QzkhYgKpAk1T$WHBuHZl!moFF)<{5lFG! zy+iI?YF3pguPFY%(yK~bffgl6Xg{8JBD+_*%9>!1Q9mj7%hWL^AsV*;7;HO=D(2fe zphk>yG;enb9&J%3tgtL(N_z+_f7ab!-Zf;u;MGLhurJIeoSf#w5Bl06ysvYSdRm4$6NX$MEF;GC(~2wqgX}3!AV5$!4LNXGOP$ zf9Rk2f>k#_xA-4E)kkZeyfBJbSgCj425C}^5-*eqh3naGn*_&pKPH_VtPDG zcQW^O2>a;04^F#fJ}TrJC#V?qMQ_26r)wNF*q)3Kw_2|EhmB8!y65nq$_1Yr1};N= zeFyapcuRxafLcmz<(m?ly;=V=k(JK}qdYEO6!Fy&#lzhk7x}lRfBml~YNTgdPYZ^j zv<>?}*Jt&*s7d5uH&^s1;4AEds-?k=iNT1<;U^j%AF@KhZ6B%D>^ZoD?C!0N@SkV2nm8Wu`ERa8BmA5E zh_yeEP?&cJ;^%=~zSQSKgsdZFoOsi{nWSk{O;x$IC$LB0MwJ|juY_)|ADY7WZlzq1 z^3}%sPc<(6w!75mM|tSA|K{vGHQUyH5}uf?5yd9^mBE8Q{f6fzKy=ir0 zW-y%no6g77qCS2g=J9)|c4#UfBuGjAeZbM&L{ww~0*9JWL7nsMrSsS<7tX>CiH8ID zu2H+KzKsyQ4rg5Od3mXr%0OpSD@>SRSh{Ym{NFk`ee5w|3>@HRH(y`?2=EAoO{UCq zy4>3tTN*wAAl`-4K4a$aflbg%Qfp;%$Nkz{pAsAC8}lt?gEL! z0d4#l5XoFV5={lQL7ETYaQMxFe`pB0h?VggzUBI%eDyTQ7}DyGe3RP3BbRkD>_(7f z>WaMxYs9y2_`c8X&vQyLeqBSrRc^NtxU9OE{fDnY`!sKtA?`i#ul8VW=IdYmeaD$J z{0=YCL7}W1717>UqqnexL2K;Ujjl$EzKfO)EmseHfs7Gw}gzYARKA5sHr>t6scC{{)vLEuHqVd8f^kn?>2j#aGqFP{V%MW(SZ^T+ntUi zcy@+M3)I9^dVN2dAvW959#UfMjy-S#SIq%UD~9=KV#BT+5Xd~pNRAB)NyHbCbA5Yy zR-IPrrhupr9n#e?x&C%@>pAPoXSQEliu_@vGr#&y6Q-D5MFFZ3FLPMlgpkMUl?(&(L~ny~L@8m&y#|KzBaTV@ zLRpZ5#uterBYBv`NQyj65pr$<)M%hKTp{l*$_wIfxL5moI|VT#9@Afri2SPBKlq`< zMNRLugpDpL{{eXb_RPn*U=Zp9ugM5!mP*admfNNCE*)Km%Uo5Xloa%|-*1=9S6n=q znb9HBe5c`{P5f#outajcY#GA&;5J7}75zXOse2kc+Zu*FY3gS!^D0cRNd;n@N~_4% zA-$d*9}QK%d2-0yXR;HKyz|86j(xfAn?wYZ)nlIBxk1fvb{DyU3tM<0R$tDMOjaCJ#z0PMab5VQ5V9Rq&!;vUGz7Z_{tZvl;Mikm&kisdi( zbF|ggRwu#tS7y`6jhvKs!fy94LOt3S1sa~DZ}G!|@}IWz&Q%^BuKo72XDXp)_$iK* zU-wxPos!u^K3M8~By3^1w>st?f^aX`l)`CXPdf=hU1%nty3g(tJDJ3Wr8A8@4VxrzXvd9^TYVzg>>H=e^SBF`k&;S%{@-rca#D zy8xE-_^z?X3*MZ(lQ@{Gp#<$n;gZhf@1(Q+wSxwC30 zEw8zMf3~quCf!FN9giwa2sNbleg3?ZeSHk+E-YuCb&bjk?|-Fo4-8t%yPOeH?7Qcd zEo@Ms>eAo+=!|T53>Tf(r3c2%qZ>^Q$~j@URjgEf8D?!udL=evulsWI1_+L{S+7@% z5IN9Szm)j+fn{-RX)#cU#@9N4hRV^h32+rF>}3dp^sf#g+72HaKDkls>EAlA5?YOB zp#Ewh&(5~c%5$QZ$(<=IdwU;uB_ei=O+ACX_!p`_%4~b{mS=JJ%Chxal#?b6ynyam z=S~wLg~~BmY8BG8KIU^{c73ZXdBOEceG{Ced|eM1Nnc_aP6OQHeXJVff-nTMzki5Y zWndDcGN%RrL;}UU8ec3==(B$>#>g++yMDD!y%;`mldtzeD&>eeR7Yoh@7Hd8kXh+& zli!zfg%Ki)4#L$I%@yA9DbkX|m-M+rU@IH9t7~vWOrPDmYud|_pq$q76`RuYJ%nVk zwHFrJLwIeM#_Jwd-o3TQMeAx>nc>$|^1b_D=$oKDKxFcKe}2hSxRnsmJw>kYi>f7~ zS-ZaVHI_b`z2Yn(gJyxK)4yr0+6qI=da+C0+GG)ZuPOVqF+(u2ID7lEbf*a^2G%5c zc-blpL0~NM=kHzgMoBpb4S4kP_H?PT0r-kRz?YdZ-|xy|d!aSe^#SnY%aE<%=%N@N zUELn8=#5D|e^&}a@k8a=-(RpC6BINNuu?NYc2A_JvMT3gYw6xuUd|5|5*R| zi++75B`)XQ*Z^pCsnkIrpbjiIZfMEc+g&wrV{0Ps|9JcDsd+VU7!0AdknhB!b^NW} zP@_`omDNN0>mH`Jv7PQ^ZqiNYgUZ$x{H(g%yYn*)dEYoN0)R&tV(Jj>*ogAIG_P1? zbRFwrO<>C>!=3btx?X;ndXe8@gf?o65xa`*6&k{SndQzEyNd%FaU)^?jKZ3t;ML|_ zz{U79-|uC6s#WVoJi`^;+snm z1HuwnopqGrk3a%}SuX{<>HbHmsgmO335Wwa zP4wU}%Z%lsl7|*!E!Jn|m*|;|^l*jCE{hjgJ-*?%V^kKK3NL@^x5obVk)|UkddwR* zTj52sIM1I<<^3_`gE?Gflz9e-V%-|5wULj_u!s&5SC`s*dMO9xGFQ<>J~-5MJC!(~ zw2xcAojsMljA`z*Kojd6U?)W8O6yDk4al&%=E#;0bn6^h-DCeA4QScBwU=ptr;U0Y z2eH01;=_k@skFxLo~&9+dE5#li8h9h0n7glwab6g(Ev(Y>55K6C!cX1k-ehUK2y@d zTq7%DOtAF#TppC`bE<2bb>r?kOB(b!oh&*~4|~k}FdPA9hX#l6WBzX4OM?|d3-vmr za0F1=Z9Q5&gSi#ek5JikG+ua3%V=YyyD+zzTb}f)R5;30mMuirnY)+8kx+c6*suR6 zxbwgV`1Y6s3aJ7S27qKuxVnPEWY(*NY`Gv&pW*@B*fkz@1$)^iSYT&W)Sl&+5cCF_Vhv?(} zl;clXUXd@arqXp7x#u@!?7zJrh^|xzce4=m1+l6kK6$_`!^dm--I%}Z@PMd`(pg(b zc{u~@U3|konfeVAa7FpemvjA7@SJlBq_65kQ6|FzZu%%Xq-L9;5U*)dXu+55e$)Di z=XwS42)#+N|jCQY%oMlSitg;7ewmZfO%6HKbZSI_yA>NgS8~CF6F}i{M zxYy8|68|!vDvwY#-5V7<{;&lx_##2p~ zPNWX^wGPuvDfE_;ZfrB0JA=I#yCPG)%-DdV5pXy1beWe%I=i$=1v`f)_xHo@L*fw) zThk>2Cbnv;`hFhrU1w97M}3>^Jyja($fdXqo(dp4(wi7&*$??L=1Gn?9_Z#D=?I69 zb*;t%_*SWhhyQn-p!UJnv%a$LGOV6q#x5Q=2==o!d?^}n@5Gd9-p;3dAiNg`HyHSQ zu*|#oPagWA;%(7c!f2PK9K4igqkEqjKVIhZ+r&9U4;4*w<1V_xYsSF~c{rB)t+A7F zV>=-dvHki)>3QqPPt1(hqhVL(YleadIV!xGfP!vRZZs*kl&x?{nh*fQJmsi6`1KH+ z8s(NV!0et`B-QYzwJy5=k!#xhZEWPRz#2`@*&}ObE+XKZ->{=>W!0Z{C2kYznu*t) zH*zn3pG}EUi185JhOzoJp-8eZy>@rDyTB()Fqc6@sv^@zl((Gv6;HlPh7!r5IOZ7>|rhQ z_o10SdE3d*fk|R2Rhx*?prj?sHTM^}%&3^e)eN{DiAIof1 zo)~6+9TJiWN7pwA57!W*EaxeOWD>BD^mp%;9C06yqEE0>4Ez9XX}Yp-=$TV6`|=3# z(*QW0?E6xit0N;Ev{7=jtK>8j8e zh<)T1t@c)TT54h5IN*-i2%bWUao=FF_j*YCE|Oe5i#xdck_mUKQC{_2{Zf!5%V!CX z!hV|-obR1C5q;>L0II}0&A%6oe?Mj2Ss!Zg1>;KF7WR0`Sp;}e8UdEIHI{{-905=Z z1HSmqH!=;&Yj}xhjG~UJHp=^ar07|YZMBdopu#tbY6LjF(@NNx&yUiLSF*Ypq)jjas<+I z&e#gsj4NxKq$SgT&`Up+4>dumbvPO6MKh5KP(eqfor~zXxZjsxR){PyWf`d$DHSh_AJ3weI3MIbKmr zjhCb4zW2a&k1rRTNt8=iqK!4f--8Q$-gK>h-Kxj$eQ0ifEx1E3YuIPZ^ku4<)$$%8i*p%W+AvfLr9~L zCzlW2nm6lm_Q^(r9wXh*1w~|l^yo9QAMX}A;$Jb^Rh{17-8(6{EvcT&gU0K10H4Lm z&`{BDc2qA2i5aJ3A?{A@2gQ#ZH8o`iQWM6=du+=KUfo|^GNpINH-R2Zt<}%;=s%&-uB~xh>iGKhOz;p-{wI0&Yv@u578n6mkac7dd^c3A$%rq%!XNcn_g*x*b!u!S&7$pWr(Q*&+ zBbGOc1VrY2jRK4{DEZ(Mppy5W%=FyLt6iZX zG3^WG#qnJUHk<4}+{PlMWqY+!*EuaIya9(YNNLcUt&sxpR$&sjDI4BTX@$VH4 z-OG(mu~6gn6v!!BS9np%eq3h5kazDA+Bb{81*I)_c82sn#|~KHznk=EGSxHcX#A7K zdrtV}(u<%>cB4)cVu0r}_dj2asl1FwDwm5Fo=SRg;}}xtmQPzQJb(Dxe7lmhaouk* zcfdtIWf_05e&=+3c^!S@Ed7xI+4j3ESD!%b-M?NC>e{`JSNm5a%pgY$^&%RUzCe1t#(2w8JcwiicE2+>w5{;yZ*3#q zUkQSf;td3KMyVRZA$C-vGi0TIQc!J#pS!xR+8cQxDP+j&#KGQ4{TJSQ!6{xR5HO?k zHJnY$r-@FUjuih}eC2t*Lgg7LsJ^|fu~c>GH0sz1J}Dpwe(Tg9m-*3vhH2-US%6ti z-P0a_AUq5UMYC9s-oRGUbP8xlKagPzV5lzA#t`wTbbS>~feIlm@G?1`c^pawlAQ6u z`%;knB+s-Xcdy;!P(=q!x;q5ioR!wv5x$x6@${U#-gUJ`nf%=>ssGP^{a4~Cq_J$B zyxg&;2kIkl3lNLtJ6L@k4pq3kJ}!|~q`(+J6l?V6?H#N!K}3kyc|24cStgH6Qee*9 zeS+N|ICd+OpJ}1H>1Q}S8-9n(xGzfuby0M67l!)9|LZ=%o=iDJRh0@U z0F!5A!)gc(Ia}8FrZ`ON&wu!es-o=b58~`Wo-mQN&Z>Qa?|vzOZw>pAZM%Pk0T%=M zt>It%_^7i(=b6UR>K_Bn>&(g{mbK(l{7n9r`UiQjl=DW#@W_zJlG8H?+}hToGCl z#ra>*`*P>>OJ}Of*gR%g*!xVDRg&`b z_Ep0b-$y;0vKnSr4gc4Ts6kdZ2EmUiV)C>6#wEShbKNqGsn(JcuUpe)r?YM7c+-Uw zp7Zko8?4I1X%>wzV2@T|vozQ1Jc&Y)XL2^?10>DcM_T!396UumR~Y^+@^v1Nfu_J05X!{K+ZDyh5Zcl#V%^_eVo+6r zvII#h;5B&qGz-qFe)pzL3oIJ7W3ygyU5oP7h#_**rmR{KPI-X&!}jR9Y+`aDQf8}C zl7>uC4yntMBG^@wK0gk=2lojR_k2kacs^^$(T5Td2*M_Hq&0 zzWYGH&p%q$IZfZoT9x=YUSn7K4}!vg5)}cg4mZmkF0AtMY2AdA$urvO0<}dqFR`F^ zl{!-3byJE@8OIwQ8+tf;YlTrxbq-4%S46i`;3-wmWo} zI^(cUYP#yAbu+Srh~EQ!w@n7 z80_N#iqz^SifUecBiJ3xEcX&9LtG~XVM|Yt@Xyo?m>7xnBGBn@Ixk#YDctAW?zt~w zzd*G}-_du{(K^(L+KW$#8+PZ22$m?+n&=x~?Ra!1{B>v<6!RYGGsrP=CKFpbS|lFJ zSGqv%l-|gcY%eY?=iqQWV9xdZ(s-rx8Z&xvA&=^kH%3%^68)FCV98qp@eJSv@w_R| z8NJCvV`Db|l$$%J_1%z%W&O5|jtzT%(ky|c)fN-Z4)B!}71Cs1rc_3EPOkHV8aFm_ zx6MU5I+=yzUc%c4Cm{p!y!ekCLks~ZWJJTV+|7-;s8~}g*U&yNW;#1)Cd>y`md@b( z@)mQ$XG*Sl{3%A#Gm@E`a!joM-6Vgaf&2l=>pRmyZ`X~=0zx4}R1bB|RggO@#TEIZ=o{|^{o}74|-7R)$xcDaYD@(&#X@C zkg^Owq>C|s5_2tWSmkzJ;NpuQN9^5Jj1;UhNslsV8>sByIrDqZP0K9ABApHE6@9EHJ;TJzea{Q=(QQu}$ZI4{+nt^rZ`ve1x` zTj?LZ9{w4MIcq(tj9p{q#=n>DNb!(l{pIL?cj8e7a#N$0_UhL#k2yu+g)>UmEnYV3 z0`sX&#_MdJM9ES+A2~gHoQ05Z0?^-uH7uiZdA~OelOjc~*7}{wQZ_5f49-IJC!hKE z${s!9hcM~v?XGLm7@L?t89m~jYH3+OMW_)00mjGQI!Y)Wm*(edpDx$k8}nioxyz=Y-AP>oL5mmA z8^Ce?e95$fu&a^Lzqh9H;GL(m>1kkR56jMC5R4I)PsI*q4T-b;ieA_`lPsw;0UdY~ z>|HfMgsm-G>5nLxzdDP#aPf5Apc*_($3{V{={*>-J3EX-48GQdMC1)T?dVfNH^71;*PXbw$Pi&&kFF`*QjG-aO%kD^}r%$BnkrQyjcSoE#KQbG$r$| z(_&!ZF7p@V-sA5Tdh9RiVW=C9*jak5_$E;}BeYpomOqLSTMy%5aK%?JlfZ zXO)&dHv<|bF1w323JAi~eHWu1xL}s$j;&g_{}hD-L74G|kPFBCV1K{c=NIErYe3#I zZ;_vNsc4n&lu;+=hyZ$;1Y~zxWbGN+-E%8mV%(A^7_*lJq%QZ*7?q&1D?GJEQdjdw zd7t+U)=0T-P6Pw7q_-&w!P;hh;%E^2WH$94;tC_z3lk5P_lDXC#e>*xw660pKPw6M zwCNHPgj4f(YJF5_KFnLxDZ7_>qR=6J9Y`2)qc2RDAsW7573eH#nHe&s+&G&t8pLV>hy#Rjf&KJ>N@F@6It%c*(MdzfYlLbFq3T@A= zyv@3a{t?~DVPHLZ=1seiyJ7krvZ|A*3R~r;SCtk?z@dL?;7Qr5ABR1BOcU0_GfwgF zLt+g(Q-stTVU8V)_YZ->->`{-$&n*;ep`MbbvVmlDV)csoAQz=Q1!pRtoj|qTyJzp zsvoF*E@6P&5cnq?Er&d7a4!`bRqagVH!6WzQ-S=5iESGIIBC!hiH|xC^AVTfRcn84cWD{wE$qAg#5qIM+!{}SFLo6E5iLW4ADaDaG{a0Sg{^u- zJiWNW7msjcvFzP3?4u)k_+HNJo{cH@SRJgwHHwPM*{q6wLC#~%NWiN`uo&l` zQ%|k9O#(MJuvnh<PztL)n<`n!>m>n=}deB zS3afb?;`*VIHfWNb4j)RRDPjRBSrq4E8EY`FGDBg+lczzD)Td2XFGmy*}bO^NCKvv z64{0Q#C!AHuiD?@g~*ue(~DIZ7OBb?{*bO zs$pduIbN%t+X(NI@mLEIWn}9mQaQa#-{4Q(W^k}!ZO&aq`Ljgh^iQLv((7$sVD^EGG zq89KB$9!Egk!JZ1gGX_KVI#oBW+MK_LinQ(EY@i7Ijz6~mjX3Zas_Rrw&!;|t2I75 z_Y2vHZ56n4``WP#--rtE-^mw){&VG-Rb+2eqFI8 z4UCwPRK@E1E)w0Bh6#pMn!)Li$E=% z{|&{j@UC7m2m9W`<9&4Yyl+NiE;$fi*`|?&aD4&BA{Aa#t#-w!3l2EQtIik72Yh(g1KmKHhBM-DNE8UD{*$W}1I73F1)aN7fjY_Q{#51*0a;*bwQry%*%Atgdx!M_&05?cPFE#qkAZZLcZ)=+q? z8k$wu`dPYnuf5)1>r|??r~bCek>}rSiKAAcu2!+fR8o2H$VG43m^t1lQRUkMz@(;< zkWy+gr}t8FPCd_8<;DkutYhcp?fo=S(}_upx_;en0lCZljqMLOJ+J!rTKk}my1WWB zHNguUZw^^7HGR)>>i1$m!-49}@^fkH;Zo>7`~t@=`OEkIM{7);2PZ-V`{=hOMRg~CX=z&D!3 z=#Ya-9FXSj55nR=j0S5u@FvD|{&8GtTr1*<0LH1CBgeBO<&8r_gB*+m(P+Kv8n=7U zx)F_?5@3X)2eWv@G5;s_zf~ANfE1|tt2_o=!J0F;-7;_~-lV&9UO08pe}vRgn)L$8 zu|v%gi(+!*@VyvGp}Y*@D}`JXyX~-=JK__HVFAEG7086Sl-MjkFmjim8cXfLmcOC8n`qU;sphM*w-J+noW^%md_OPwq>o6;}qtWq7~tZ4I1P5ap92MZtUT*;tD(qL__lD zKY}*k$}|q7SM+^X9UVGg9+6eNOXme5i^>bXk3SQpB{HYQ6aoYyx83xGpCkdq_T3@J z?M^r9d%0|-#vS^}sG!1D;a*Q_v5^{p!!D6%b!xIt(G+nE9b0FJZa(8CCulwXwU!{y ziENHA*tk%XuGf;9A5J?H{tm-W>FZRFXoGFn?S`8&WUx0c& z1d&_phpDT>;0Wk`C=xu7OsSReL710g;ytkvKe!}OEVn_<0kYzLG5p+m{l*vYNc0c# zkIECp&sJe`pu-b={Simbpw?Q}pdLeK z<|dX*l3u8z8WgNfkiSUE$=XLfXETI&1`SBekQ>JU(-Nur8)Zb(s4w!=N5hbM<$v%5 z&AhPAlfu`shHM2`>F;Wh4ck_B4Qq!NR!%uCMruBj;M<#ZT4Js{zj9a{^fM!TGxaps zSDI$5LU5QC>i!Ws`k4~;bsdIBQ4Mb@5KY2jFl~V;5_yC}l>uYZm zVXj`hV~+53b*ckRmDsJ%a4x>VN|3=)t_*A$nOvc1ba%Hop5w8x%$@A1-kq+uR{?N* zd{G1Pe&5CROZ}9^ix4dnr-^#Oxx@zI3lUSdrPtYQBici!*W6_sWobaXhWPa4>pRyk zpfBt7T9fw?fO<{d+2fo4acg2~v1-3>O7az zuUj%3F5JZZuPm9&o+_)31?^nPa-leV2;>moCZrazK4MBukj$f|0sw5xB~+4+fTPE0 zGRSQxIZ&oiHkd2;e!^q3mv7v-np@uj>_`V3i}kHI{9I=kETMlJmP+w9lJc3eg> zlh(JO3toNIw!gG#?9O>?Sgi3rG$Msg9Q&nm#siaP1LI~D*3$9YhWR*&y=nvzLjBuw zM^30MRKbWM3k{+iS^jTS2*n738%S_af<+%$z@2p@6E)==9v)1W^S*~jo|NfVSZu5I ztnx4_SAX2aMBaR~Dg`$vR}UGfob-liTD@@c4}DiHw_nFvkoi(R(b95V^2Ns9O7*j> z_%WZA5grRP4S6%X_mO|rvxkI0mCURS5=U~vK5@1WZPz4s$`LPz-TXEs!s~^epdhg< zYYUdEd%fc?n&fW!KD^$Et?%sZOX~xBV~yICLE|LT1i~Z+{8Z@QIU@Y>=MC$#zWF}P z3m7PvW1Y7CHF&rscHtfnb8hOtzpde~#8{eQ-z2yb{~!C#O0Ty#4K*1e=D01lh0-r? zbfM=-VGX|@V&$~Wb{}e)>&baNy}vD8%ZuCSasr_b&g0_Bm&~$4t6%E;3ZoWDIc{zC zOq=1Cwa4|j%E!nn{w%h8|O4BHU()u@?@d@^`93#IvjT|G5xgl8vjj~vlC|E@uf`baJ$!P z8KS_;eteYdcIJ~87&jzb1jjEPq_gYrpaZ8o0&$-2W4{qazZQa)&wVwd^K-sCTQXW@awSh>38Q}2OyGa|f4Y~=d!AJa-lcyeTN zNRX_jkCtTK2ZOgwzhy@`S!+{A@q9l8u1n9j1yl>_RmbE;yySQM=Zot1z~V#?6y&l_ zTF0v;AxMl^A3kf_{IG^a9rD^Wi-7&8SEOcvz~w;3K&}6kkdw(mT_-lj$vJLP*(Ntu z`O2XpI(GxV!KANKZ5()iqx7%%yBzzxTDN5hPOHr6EHhqtY!Es_-LQuJQ^Z++c&3rd ztGkLxJK0EvQBvf}(496hSHYUc4`H%(Mp-qwQw>#siJOa}zVYZ)dcNSP2Gy3XUX26( z;(Hj2D)%siQNCMpn(=mV#3jgtTRMev&+FbDf4r47x;?@huDRi z+x>36xiy;P>fzrqKoI?ZHXe;*VSlAJO#Nk&-*6hecra(``W6mkeqG*u; zg1bZRZ6u&GM>}U{Qw|xKr7>jh1mL=2->#drY>(drTG8#=O=*EN+RZAUvo6_b{zVy& zqEmRj;MlK2iX8d;W%t>4ZrND>?%s?CJ04~1m(7vSoa-H{&A0QPSEe16i)&}C!+d_rI;SgSE#@YB zg`!X8`@!iUpLh0BM|4&m-7MOS`%GS zJBJsEfiB$tH0IMAuCibm`z=z7!C!}lu2o8+gz4^?-8K==mLSq2|B46rZMLWVz=8XH zdeAX&!2w9-F6=*jyLblj|FQO-0ZnyF+i+;2QY{G56$J%pQlu9_P^pT7bdV0xdr4>t z2m&I#_uhLaAX21vkU&C_P6$1aP~HuA-|ukOPAPyk^tG6!fxz=2lo@sl^!&%Euyg0{X8`Y3 z3nr<1A_t>~SP$Mr)KZ_^f+1?dT7TCQLLPWuGgwFS`TuPR;4WD~G|nhLB_3-^hUS(K zRW0>Q=`UK_O!AYTv=4N&^hCl+Y7AL58i5Rx@)^H^rYN^VdwC_ER*5y`MtBnHg&tyU zj=f$5w~)=q^zBAp#+Sz)5r^}WN8F;eA;gwCcfHNl?r~W}<1aFV0d<30s!3tZezNyV zkm_4L{pE1}in1}d4vyWph@PL__)^&}ytrlj^;({oREhf;h4jAG3qQETK7sHOU+-%% zAqP9fEuYH9C}^K&3wt*-3j0Ejs) zb1%<-G5nOMRk`fN)hIs!`shUMFh%x`6jvachUp z!#gBFZPWX7YvA6@zjB{aya-k&+oq4rl?39a^;A7Ck1>3zwET`}l79{dTbQ2w2+%hT zimk@FGY|B=HKh_OWt?+dkk??;S<>Gc6F2v}P4?k9>WaRkX1ze+Ohp#3$Xf26$D4xAi+uW=@@(ZcZV1m}mA>r`dq;k^JS2KH+;CJ&ALQ znw*L|cDBMkr@F4iE*)Z#&1EXa9QW6nh(4Zp&Co%Vx;lE754B3f8QSvSPGJNAj4I&H zMB@s8McTGEw7&$Os4~**?%cU~l682jlY(R8x@q5lCR7r&7sJS2`Tbh@?Qk3xV3(P~ z&}K4mo#sSv3iO5k0&*&5{9h~pbZ9h3eHCDIrW96kBP6;PZB(jy4foT-Ih5A%ah`tI zo@fkd_1dk6oT)e7wI*Bdgani`@>c3KWzhf0_$27j^e7hy^6}9vNM*2Q7az#_=|Jn_ z>0-D$Z*zr5fAOq9v99_a?o9K+3gC`fDeA~IYAC>{g+5CAw=k1iX|wB~E$1xV6>)*^ znsqN8b0?ipRxR3vEw7g$GRsaa-zhqQceIXL&*J$SVD5<|j@tnNn94NQcK+7fcy>kP zNX~JlG~Vdpxc`3nq1hFAgdXlvX9u^zX!t!YOJ6}JFmZz;nVjB&==EixJKlY*j~&LG zcsS)#a^(Pmu#AX5T(9+1M>uRj2S^%`W0 zSn+}|*ITzV`@@3}<@y%r4iJOwOzMQ%E9kd4HbPr7*aoK90ir;;b<|WqiAU@FoZ@N) z9If?#HUH>Y_UT!EXb+FKEC(z6@ri9s2El1cY(wYAtgzOBTR^}E$2NM(>ZueMjzkM; z`Xmm_h<(tvdBZ3I$;xdSUDdKi(HK9cRcUkIWxBF_%C|e}swYeqBy5?U%RH89oc0uU z8G>!}@zh#ln9vXFxWSfX=Q^3Cys+8A5XU;7YTz3hyI`yE9515%+4XlG>G)0!j6iL^ z!g8U#^;#&XNVU>wofO`|G{+%!tqz)xB7&nke!wsV_)gI4Q;Y08=)&BTu{)J$Al87k zTs&Dgsimb_tSsNTKPJ<``CVn92w0UcV<+oj3lGdioeKHYD z;>-j?W}@PCTKYdcLv=(3xPtG^2X+d?}VYhIH^e|5lf+C`9o&&a4!g|7nN3#yhjmI*K z;pDN#rLSy_qu7NYtDDXnl56gdZ^Or|e^v&|$?XGk;?eAucGAvL5Gq*(WEEdfF%rCF z1JTh<@*i}7b5##1gh=9gl3JJV^FomSq#H1Fn z_w+s@4;HP8$(sq$Ha0c2?nmF}a)uJqy=8FwlHV=|#3k@6+?-KssdqA>5k{;Yd?mZp zPb_!sp>D+}ibIzlL-Q4g(7Eh>-}>D*n>;r4w|%BXSn73FY7rjvxUR37ak#EZq6Vxt z+5!HihGvY%9t)RywSacD%ux*8kz(}*5fIi{@P8p?yg_aPFpWFE_XOPb0Gf4^Rdi<6 zjjNt=Y|nA8%KbppY9?JPZfeEA*Ol~6UOm*cY4~y47ks&!GMU_YUu?}FOyO_Qz!_rf z28cheeBq^H9c6_+HOV6fsK&D`!LJCL;a}M2imt*#eTe#>rdm4eSr#h~z-YD?cfjOA z9H;Mi1A?jC>dbOo*f#h_XPJq|YQKz&zhBJeYkh-VBRJHzd@z7))E#W8^km@k*x$P} zeFD@6gJGr7xL~cG`Pyaa2Ouke8GDkj*Fe1sP4nOZe)Drix8>^4dtbX64(GE!*B>7y zF_iDgazlCmzSO*c!^diHHmfyOtg`{F5c?=O58dk$>)Rjv2OoP)?VR>CR%Nw)k%{WE z_VES+CeynP(g*pTOOt4oqq|~=Di6)6EuMnV7gaYcK@Bcj?_Dt~*})6l(VF8wDb6rf z5%`h8oWlxja;Elz+A^=Hop5MC`Lgkir@xZ&-_I0!zDw9IOuJ+F;CUqi;Z1o}nrQ8# zzp@03ra|TnfrX=WcU%OnE>`T@f;j)DeJZ15G1b0`;JG63L{AHH)nv|xre|Jb6;1bm z3V28#@m*M@ifShBZoKm{-R;Lt8V4O8z5{U8!=N}a7X;1R+fj8WgMq6yOQuI(i_O;` z4N!@bkNKJ~{($nuhCNa9bo)8dLFA>Mh}zlkryUh>f}!^65-Jrqn?J)@T5&d4gi#em z;b%z$$}T{t>+AN5D zXaO~3bFelnJcoe%ydT}!70I?hgE){msQUnvlX-ogQ&4B#$RZL=z3x5TeD$PM?THG& zF&RhRweLY8RO}derGIx%n$NXrm##|4{cY3c3fVmXSn@%MDop`8Ohr6?oa?I+@OCuL zRv^F=ogXB=8~+4c4j^iC9UlN{ftzAx=0FB35YvRH(1$o*{cBE<*ha1=DHvA%3iv z*~Po=T33_}!?1M%Of2t`i=Qr?k&*qv_8iabMOc0kFmwc}bjD%WIDvUs+w`e%{|n*< zKktS+AepOf{t%)Qq{9K;8sN~x$!s}!avm8tEnloMV&+EuZ{E-f$e1xx33@9d?%1h)fNG9;8{KQ`#b`L<}F(S?zN#j7Nh*QnC&u4q3?<)cM zp|AHQbjjX)3B)w*3WdHn^qCi(Exz}pMGq`_lQaFlvN<0?0u0+V51>ZOC}*EikWo{Mt~}=g z1iIVmZ*|c`Uw61ke&Z>@sp+8jW*|Gri4uSqeddWzzoZ$$-Oo_$B{?ACY^KxkrWDUr z8uW!%n)G-PUmV(Na{}ams)IdyLVxWeaX?hGZc1^i05)Hf=--PF+$dG@MMSr(?HcAu zYCXGrGcD&%2)cn8p7Z&7Ow$X%T-kB9ih!3)sk;^f)ufo+m7z!-P(t=qy~r0JfJ(~p zBHK%u3aGc}72#aK_)BjFeM?DK#y_ON^uYT`Zh;1*BdLh3oD9 zCPHnx&&lgNrx5;X4Xo5~@m)<PEPho1GT5taLFqU^t^HgC$sR=>^v;cEAw^fYQZta@PkVa1pHVPVFDGq z;+8pn3@?K8)A* zFBETo52}a*jf!GE*X)q~O0LJh^qYtE;CS}ZDV5QI$<1Ot|5T%3!0}peBqqkk)iZ1^ zHm|EH)htS!xDDVKuAVrcWr`$D`ziU_DkDdw135rVcOF6Q{dw8LEm(RMP*Va&B}bES zGxHQjAIkTTuOl@;>uM)5=Z#+FEhlSU0sWfkEppai0C5q}KAX?)1W^@&T94%^~|i7uxDawdS|r7ko0tPu+A>C`*jdd%u32IC16D!qF_qX(QI z!T(6T?8heOpYCU`BVQoOo*eXU(Kc6Y@<-9vK%0P@DHe2s4bM{)fIP21O@h4SjaWc^ zwgj753h_N9y;bDn*{xz^w;%s_&Wm5s$JC&I?6%f4^jD$W-&Ki^iM)1r2}_j7HjaGB zG^C~t&l0vdphtFpm@a@JWk@Xg2`|RE`eEDjczSD1d5_vi%otOdA`AD(NxTf=8rMzBA!7l&R z{d}@|Bv6+G%(Mg=>pmlJtXh_Ydm_Nho#5ZI{t7YmR?|W|rxPh?V6x(7(?-LUMD&Y< z9akf?+*UHjs(8ZA(hB}QF1-f24+1Taw@B1W-+$7w`+0wMtq2$}kYSaZeMY5dcd(yd zRM+)}Z0YXNd3^G(p9X5fmp~i+wWs3lXgat|WEII2Vh=KoZ5$t}3WJvv8f$LwIVCK{ z>1YqnPpsG`D0&S%efr`uyZ6_pm+xetb-Y0JCCz1@jGVovGjF_mr-wiy4;KZ~!(`^? zrEgdms@I(!XotuSncfSX>sU%!O5n3-z}YM_>druyo-ywJ>tTwT%)qO;f1^DVeW@AX z0t|z9u%2aF{L7KjxKoI;z6M(K?4ZIMdj6-s;om1r3L7jH@AI`&eU%Y93t#@rF#rb& zy#Msx{QF}h9j+ePf1GGLlRt>7cgukIITP^x-zT5_VT#&q;S}=v(+26UuOx*1Kod+< zIGcNP5m=8??Ahn!_q23xTNHKIHu=6T*Y<35@I3oek97R4mhR8hqNo)5Gnu%Y#FpD} z{ZMQT5S0_GSc(aRw#Vgk7n-d!SAXT>)4Le+EczVSy?NRn|=RIRal*X?>6w2 zv{2DcA;-D6MdmxTSv=UDc9z+05 z>r30n^mVal--|m&#?IaPU++lRM9qHLn7iGJcj(g&b@PJ{z*rdLVjo()3O^qe(?A^Y z-r0Kb;_LYmw&JVn0MaA}QQq9Wp~km8!vA6J$Il^bCH^ON;1p?Lo;G&#$G~483w(|6 z)bkfr;up*P_!KmOzL=GK+?lB2tx@Oj zaCH31*XfPdt4Y!?6&2GDT>N*r|DL;Omg1k+eO~_=UyVq9N2kE%s3~3ZqcicZv$^U8 zT+a(0VQD>33<3M7zO=#vnUWotw>LC+yz1FUiGQUH!CxKD=3Myw`}23Fo|vm~Pm04{ zzaGjAeWEgz#(XB8U+X;-_@k(4ma6N{-_tRMB!h^v;dw_$@>e+hBcQc?3ee}ANW*p9 zd{>MeFJE^3;BV>*gKm!o`x266=Bli9A{DpX6WZl%g8+f$ zFsj(@*j*Ec_$E#4XY2yGn9sAu48a;XKNBSL&u1A|4_MKR&MR(@Y77j`XVwrnU--Oy zsm|VZx-d%X;Z@D{XB*3d6hqjw5`xRlXBwvHCS|F|-d!?|E~};Y(LtI`+k-Cg7q3t2 zOiKkgHO2MZZxjW@eU%#|0r~>yUX5FUZeMN-dsY^oi=Db4fdk{&vq24@ka)<#!WF}A z%HjQT+JQV6fM~J@+gpU*eo0iFm_CkpZH@ia&9V&FKz1djI;@?jEt@34Aeqo!(I9?P ztj8LK(9U{%7xX@k%`~Z-c5T1Ctl|KfDAx6OT}Gp3?kfU4tSOK*-oKIZX<^lpEtCzW zBQD$F&|h!S_8vMfQ1U(pT}#M5DQTjkhHedoHFes<@@{lhJz4GvQ~NRA>VLQvUt!_B zM0IODHThwvtChAVstLqcW;+-c7Iwc#?{_|}5n7)^?XE)Xw=eRCXE8KlsM&QPJi)YrGDq0m*z!3tllD`{3ZeMT;h--1bQ1DF%(GOIPKte` z5_X>q|<}qxHLf1PXQ!6UuZBOg!+}yS@83MrDO^1R9mGPpN<}CzWSBZn^ zMaSIbkEV{qw!~bOzlGZVDqEOyI_W|bYob#Q=s|bo9#}jElw1lyv$)5h?Cv(3_;tSS zPn0@oTk|Y|usuE^L{_nS4M1G=o#=hMD$TU*lJ*>bA^*r~ZuwGQ5a!t}P=6w98En;b z8daziFbOa*!`BvW zKh<NJY(QM4|bC>td=p@B2k_ zq0KToL^4B~kyWOimc3#vl4P>d<8E-w%rDfZVBR^un;K35glvcu12Xok6(atj*yJ5X zqi&qdevb9jNFI~HuHz#Q4-r7tVsDtuW)VU3E!qqy9XfWtPN4cjinE?B@LvNxaqoMw zQfv8SP(aK{tSNat_0v(qD9wr>L}vjUBj$EX)J9bhp3K%Uu3M{s-|Rt5X*yozZyLKT z;(-{i9?eC4UN&x$Aln4H>Vn8AWP+*Lv#|4f@`lyrJw3Fg?LSNOnSOvWPx#NZs#j;3 z%hu~_s$%;S^SoA5(%j?+U7gD*zS!aC?r0?1ub4^Z%XQz6B6K1bxuoN`WhN=ZRG*R_5kb2hPT8S+cVi?B)z(a*v~gup16yG$ZyMp z5LYl;e0Zzi=SB>w0L83bZ?Zw|!%#QNOH3Vq0?bLzrb``Gf*p2x*?t_m(1=Ij>5-}( zey?qli~8)gSi8ijEGem52Xwh_v!sQuT0AlU^-y+fee(7Y9{1Ivv_n?TjlnbuiupzA zUg7t!kNQQ|1?%2`@? zXXl!%Y!^wQvI0H5~GW4EbNn% zJbl5ux8Me50f+abi;h~OV^uqUm3z40Op`bR%a$QifjdH`p96 za8fUIe?m@yr8jgIyKPW`+Vc&cY&vikgRm1X!fM<hjeTDEfE1r+co^?aN5x&>Ox_F8oNWD)r@ zJUftRi)vh_9lNatw&_CHH?}&GjSFhA*f##CzHM=z#ChD7kfXokJLSZ}@7?{ePwgGM zDBTPZgj^bF9Iu&qQ045G*mBK=VD!&oCSB?6+GQSymv%i zQd2k{y?o=!Iy&^Dqoae9d=?)8I@Z^(UR}G-%sk|IiuROapp>_~21+j>Ftv^=##w(t zQRYuwv)ZcGKfmW)=*~M`x8vh1WQ^eL>Sdrz0KGe|J`s4kh^Mz#wfMu<6vrkJBcNIn z(z-!Zp&v3S_+=#-Crw3PUp!9KJ!G43&oHw|ZofXb_yet&$2}uML%Hl`?sFp`;L(*U zRvOURSKKM>dzU;%vt&8gXdVd(1NOs%O{gm@liq;XvJyuEtkCLGvav6$iXkD@Vf7dd zQA__+ctnMChZo!G9*K&>501W6uc5L%6V|D|phuI`gh`K~m9Sd-gKTkZ?ed%1;+T`$ zjN6~m&h3mc&^z6r&27p_ho2hA8_z)>8WdDdO#$v&&Q&Q0>9Ip^dxxoHQPaurxZ$G# z*lvfuh$;xAkkj7zB@sG#Zd!d9*LJ3hjEWd2%ak+Q$x^5QNJ(#5daQHD37dp$f9F|& zo~%JLuoi{NglE>`B$ENi;|AS~S%i|PG==(6qnM2){AWH2bc+rug<-4CRMtl-RLI5C zPnMDD^+WotGOliD?9UY$DCN-Tff{U{D7^xQ@V{9@^TY)nh}$2-nTwWk85 z`SmVl0A`HoXx^v;FsxT*W`g%wvcJI+S*_x^^si4tuypV9Oq;$B9=QC`k>Bx*rxLqT zIh-vwXJ`o{Nl18pAg8=r5cZw^MADrd(|1Fiu*6AT-ksRFb5l+Jl$iV% zhi9@LRFG!!GDo8RK?oe zH>5E3**xw$Jb@C>J7*CQWW|z;u6SjX%!BIKD_+()u$SV$$H7ia>&CL`G?vgRaMo&MCYOm3N|YWix{9IvGhYHwa>Y=7&OCk3W~Q8 z@i0v-u%$=CxxFZ1s9x@rcv;r9B!m!CGaOBL%q*|$`_huy^!R31v>P!Q{M8X=^K0ri zIvhei!RXVm>ZWIAW@fzlM=oybgR;l;&K=0=C-t5dA6Y>%`a}awBpQxSKQ@?C#XX(h z5R??(m7hPt{JOE5po`v6)~G=ySjR0zD-ASOK3r{@db#ELn*tMyuCm{i@O6ScnzV_+ zQ!~P977ut!(N0x~fvlWF;AYthmzu9abBhsfzI`7w<$VwM%|HbTc)@3S?zWOyczAgB zh}7+f#6(%5TaPj#*-&YBr2JkKn~w1OQFBv`rABKv-h+ZIKC9`vCt5WkNm0m2-hs*8 z{%CjNQ=H!Ftv6mGo1HjZN(7xMxZBMP)=Q-1Nl^px2VID@+pVf6Nug~uoJeF#}DO=cNGB)SNSS1=wxuJ28MMx;^$z zV`*c1;YkqDjEnHNgjV+!aw^z87ZhVrE6V_TU`}1+96~S5VJ=pvIyApDkQ9$P9SKQH zQyf`+SVT~H3~-RjPPKpDAExi>D6?o-81ZmltZcF<=I z3)O~BqsGVTe6_+f2pBt5Ij+OjhyeO6FI4*sk zZRQ_=FcbM?j(ywV?S)=?7`5uT&Sn%cde!Drxw<=UGX5T80;;)tVN?wIW_L{1ImRzz zW>!E(Xz!>k#@6qjf}V|&D5(bk@-Sm}fmTQeoOP*3#sZFg;k+6HNOKHFq%l?UV|DeE zUC^$RF|ik)ls_p&HNtJJFq$N+_+#XmIsyggtn!XP-H!1KA4LOX;Wn;+-&J&R1 zryhtLno)`u!}xPT?~b*HPZNS9I4|&rk34{097u}2&BWt$VymlB04%~b06Rt z4}%wl5j21P{P`{|yhPu3Le|VIcehlnEAM>P0c2n;<{$73Gdd^+Gy&{P_0t^RHOI zP!I6rUz-V`<$mhM0L)0`N)j6z>korkq8PN1hn5At@Y#X}en(FGH!$&UppHgIu^6bT z057IDPEh4zjdP*a!^XthczV&@_p>~k&`It;3`_tXdN6P?p1&?8@=q6Q@6$zEob4o0 z1wHcD=E{EmHe3Pk&Y~=HDK%JggYt-6hUUqq6Jt+-r6L8o8LX+S6R&}99<;y9x z(+Rz^bqR=6(m&15WCdP~w&(F)#Yvc~^gzAYFf+A)4I>E^mjwRzhG6S?Y$rX9{C}Mh zCy>Q^0|T?^V{}lnnl&H+bNs&ye9pY7|F0*p*df(ZSW-+}Zo+Qt_(4VZ99WFv*PB!? zpyhua^Y=8ocROeAab#iwu$+zlg1`THzHjlxZS_W+Hf&W!FTHa`mkeL7DxY2 z51Zw5j3NC0b9_RO;P-&$&-ia*F0lTLumtzN%-*mNWDkcc=>KJ+hY6v_mqIon41c}i z%O;MFB)i{HLhJ^5U>fDn_GXQ^;!mK4j?so*kg5VQ89ju@hRM&;nz$xLldg$m~dGQ3W0Hg zARp$L7fys}|z>M209` zG^4i5EWs+wnvq?*N^45YcJ3w$NjsM$1damG@CI1aw9AdgUEkhX@RcMJe}& z_vX|0hnE5sTg&( zGhW=RF^1QbwQ(P_=CD>+9fT4Djrlj0S%!+$h4m%5tIA)qB=!>Aovv3(q>elOoh_dJ z%YM<#nh<1a@gEznjccsBAYeDMG?IW)?gN`sMTl@6D zu#6`1669Ls15-ZIdSu0OshO74g06Xzx_SBRmH+2^iH=H2dR9FRAxso>Pf{(Y34X1@ zlYzzqaXsdd0p8XaNEM(b^0H9_1fpN`6qioS?hStBkx+ibdyuEkOkQakHcOF03Vvl{fAJ_g!)bo zoAeDWvTNpMR3sSp$IAMXF{B>uPzLUKR(}9L?OBYDiFs59LDgHci{c0DAI z<8{ru{Fy~D;Zasllqexcnh+Q*?LM$IpH;PkK!0ta5;<+?z-;1Yh$MdMkye>>_lex9 z`ot^;XJx4;guQQiR*bW2lZuZ-t(Rbj5D!lXt+-fvbnu67OMrn$_-7kDvL!?T*q_;{ zx9{%vAkNQRF4%oKUc*isYOa)kDzVaFdXMF6gFRv4!}0VkoBEUG&QO>2h=-09?)^Gj z$G_~COfg^7f7{*Xb0-A_kX|f2FsSE$**O>|=B!FyNh;9IHcmvA|=#)am72Fq&=C~w#81O+hbcJAqq zrZ-buU%Qqf24=DzQ`fnWlV}PB_;IR0Nwu{&s&Aq>f5PZZWU`8f{OP(q2H zd5cRw>zr~OnU?^gCNVZd+(jZHi&hAh@z0g!R5jxEd9$D3Y4Mqzp(sbO`k)O z1th^(l1)t-0UjQIAb^QNgUEmV71BNHH3_@{;R|^gpx)5g;w|t`Ty$_8@J&o~NJ*!j zNm6aHYj)S!dLNLue+dZ2x`g;k&HG2p&(G5q(ON%#st>yCePQ*If9Q+A?_%w~E{Xj5 zY~f9#6Y(gDO36NCbkN7dM0q~f&0IuX$v#vmT~L-ncGV*SySeY$h4g?Pno#GgOgWef z6$=O_E+#6Y#MfqSdY_7-q(#{U#HH3P0Gi%6SUmy~U9oo};tYfgq3Z&iEbO8|8#Ox| zz@EnuCsG@7iS*Gm*l;BB3EbsIqJV2)2%Wg3Nq=H?U>CJ@HtOS*@RgOs{s0>RCZ3M+ zVtMK(kh_H%;OgZEO`g-fZ33b~Cd zQD4LyJe@ozzp6+p?QvvE5%@049?K5x9QzFi9m@=0mG)A1*28rJxje*h_cBMvDW|XuZ%TJ)J1C^qXl2J2hOA*EWY%qb6QA9Fysbdq_&x)SM+LiS5 zn>C;oHtn};cjn0)>;|>F)?%in@90FY@8NV1fPnEv@_}zdl?-?bx^AUfaE@M^*yuyr#UEPhT zH-7vceX%D8C_n^Qn}3^XAHySDSb`PgvjOV6WeG{a#5Lgvh&FE&B=-QUP6AebeZN8F zjU<%4D1|IAf0@S!t7cTW+p%p65fhJPaolpD2ipilL!23-A?4!!kbIBh=@u=_a=@G^ zN8{ETemeDd$+cTq14mm{)avVLBln1zaV3^7EUxCvjNP)&j?QY%wt)|$1tpBiY~F@u z8$nb(-e%ju5f8ojoty^gv}t+k<9*xNu(YWUHq36!vK3!R$PkIvcI^{r<=#X$Bw83E^>iK?tv@S9(!^!;15dOecdo{@CPeywZ1blPc}vA(nQk>fv$qjjrK z0PR^MeW4$?m<;qTMfN;MyAt|lNMvI~^ev~5z0qv`HRmlmSx#qk9(B%E1;%A?)?Kmo zxS&ko7YicG5y#$Zt&t2RRZr$j&JfFd!tO2>TidZ}y4duScPVGmR;%8sz(w?^&ahaG zlcP`ZZ2JL7HvIs&I%HE)|!oVGO0gMr!fH|lSh zp3VaK6Nn}p#>W8s@^4miMP!8w%XFCfbF|T3wiNghuvt><+P4>xe#-DuKslie!aMmg^<4#oQOtc1k=OtTOW9OM9N14%f4%p92ptBnLJQn$Qt zIfvioiA`moNLv;T!a|Yh?JPjI=H~n6)x&a=%NUkO*a>r|GFyCIL=M{V?49c6983gg zKfhPzXo*enSg>SmNA07TUM6V=PC|Bk2 z&TdbcSA_2?(ig5*7m!`xXh+AP8G5Ie5e_|e0^N5kQHGRn7hz@)+eg!)1(cS#%QF7$ z&RNl`McKN2M;u^Yln^Fwg&MPymcPOfRGfDD=m>=7liHP$ z%^vBz29tXf3TsM&zU2?^Xlvi7z8_u3*zXU8?h?38?sm%*?MipiM@VIs2j;l-n#MJm ze4{4THP%>-#b!S!wxAwG#Yp(Zcm2TLfr&GOp170xqM)ZZLawVf_mEGNX*E%B@bXWj z@Q;0N16H$xfLFUeZYT`_mZkYt4GyCnfItGv^X)Q727rO0sA9j$ppEyk8TJ|O2)WhP zqj!en{2M)>oZaRtWP#3s9YZ@{|KYKQ>l$%UO5s!Lyc3ZxYxy%xgDtgZ;=Y+?CpZX4 z-V(|!0|*+&S%NCP$)=+vtwkcG7#Mn0eh>LaU-3f-N60~4m}TV|j(vO8D>Q(v3U^Px zQ-Ee(Uf`|LoYiSf@xD$jPZ9HU+P%2Sq#lCAi_Pe*K8`qeui_`sV~gAxfq1H;wdlo^ zmE$>6XXIrk-%q~p;b_#7uADCGNty^EIdbW6 zvqxx6uTk6v~UY z_|EOrfx0e3%c0*6Z6%jj-jJAWyBP9owKDx#^#={;B2KPGx}dbpn%(_CM|;;}t!m-O zZ{foa?%x;9aY>%UG#q)*(%J`8F(5=371yF=+DP!srdlcH95-(c(;9Z`puRMQo9@r% zj+9tjCsBVVv+`{`?;$6{-8y$Q1enaocp+ek?y-XaotQ_&Ee?&jMg)-RVAdOleaOZ( zj@kl|y8`xy?L-i%9>JNLQnmF$y+W|~Bb>7+!#RjmI=cALvQcuhY7hq;_;S?KgZ5MWgH2M__v{FQ0NGRp!%Lf0eh4iMPt` zlH@ouMwAe-%wvQnN76~l)KQ;W){%|1@9UPG(MtnS6lQOPc}ssma6q{F=g0s#*l)LF z@K}4K1f6ql{kPS-jcw7iDJL4|1AZb8CX?e-<{8Oy@ozu&xkZWBHn%h1W=F16mZ#@BRoRO%FIj<{ibJpdQ5E*|k2Yce#C&*0rA|N2m_h1G^$@?xopGw~DCe zTUEJYGO8D$zlk&AGKlSHF0E0KJqMKOGkU@rkGJUs%f$Q~?+;mJISd8wjp4orbFWpv za?+-rq5G6F)vAn#vpejcWtTi6hM@E~j_sVQE`MRrOp-C^{@ub4^7?YFYb6{4P!vie zfJc*JfSb6woMuAe%`DuXYR#h4I{pIeum-n7UmjNrzdCQ)y1cO)?uYtpvlnzY9vGry zuuQ#C!*rNlJ3h#=Q*;Ay`T>Jp9^{@jv(t^I5*T&9LdlA1#a%d_*+AF_5_P#7dh{zk zfT16tU=>zQTVfWW1fYxDRC2JL|AO*pV|va?0<}4{ui}PZqH|tS7Ao$!6eUU8?#XR< zM|*po3d7EUN=|!YL5d@>eKi-9-fC(q1b3ZExQbu^#mhV*h5L3%+9F`?F%9d7C%b^Z@2 zLG)S)FU8?Sm%b;{Thm{%SKBN`{~m}JE;n0PH)QQJr}w}E{jnsat9Fz4>vDrs@FN@G zg<=hcQ?p$bQ}EHz7sn2%oa5?^Dq0l{4U~y-6Q57YmRSd%xtDHD8he}HBOjK1qRo_* z4RNv~)X;IlTexqJT+FY>u%XDDFYRFOuU!>ezw(*V***ZR?M@4lF23-z2JiG4XQ$Pj z+#UJ7`At|oIF*?&krorx`!FlxgKjkE_`NB?_=t!{bnbySr)mp=Q_YG+A9g7C#=kVf zYdwC$02?%c9D!o-Q zc83@g)_V@`{0jigWl<&^6ta6;J~{gBFznk(B4^atz>}_VN(^cCGqb}83$%7)hc_ps zr=rQX*Xvb?e45+3vz=-TcB#3FOogQ6S+&RthnLqyPv0?vo$iK;iA*&JA0&cn-}la_ zkeLkq0QxQANc3GKQa;|>xUIxiFVyDH*Uo3@3L`Lr0VW~!Xsfd=wQf#S@>~Xt5S=zo z)5MvjbW*V;gqioT$VfHIm?MwzwSpWMk9q1gFf@j{9t-JG^`KzweTr^6t_;EYo24Nf zTlDrhed2^jZV);6kD96axGP=i#I7_iveSGM+8n(#(pOG4KG+%Wuly2VMYJ`KE*5^2 zZBI%7nVwqcS);N*y|6>wq^^7)bGd&!sUTBHad)5Q3HEUK*Y3%zR$Vstr?TOrcrIS` zq)Kn2Y8;8*+&nVI>qnza?SG}@UY2V+H~U7HR$=9ItKABAL6X6Y!MYNYuk zpX%HtlT9ZnHtInULOI2A>XU9ow__A;Bo21V1l0+xL~J+Fqn1x0JMO(WTgP4fc#>Qa z4p-09(#d1L*?lwn0aPrn967|5I)C$Ac7KgDOsq-$X6L`?!jSHSsY2x@7B=&o+A=*$ zuo4u2Ad(OfOmsZ+>bo_y?~lvgtcD}qi7!C0ze1Pi0PW1{$Cex#;nTVfdv=@oWMC*q zex{OK{>u0>1GBfPx?QRp`Jy3&jDp0G6z+ph6Ia_QFYQnSq4~1{O3=qry+ImDi;KQe zwGQY8!>;FHy3?0IgBMU9<730!z-(BZ(DEVa6^EgLurA5pEg>9vYl}2Tb1iMJYWdyr z%Gi$0W=D6`=PT#(AK?>F_|JKo*7*TT*?dyGh$y(v{;PsohvK?%Hnff#<olPPizo4$=wfEnT~-&vs)${!n0k#8^rP})m7<6r_`Q-`NwP?n8?qZzw?$js9-zvtZ&5-{ogau3{-SQ79oy+wI^Dtd>b&qYQ;yl< z-%1B()0mD)p7KFxltxur`>sTY*HxpNJZ7ns%pTF4db71^x6tNTptcHD@43zAe!y%7 zoW}erMlS|fvQbaLvA7b3JbyoRGk|IiYR7_Cg372dZ^Jw{v4Tpc1s^oyl2DD}bzsf@ zcO!kdFVd356BSSl+nnZytL;jm3xnF_Di1iuPM0nLTK-($rW`+9F-vC=s+InlLv~Av z4S{<7WrP5#{zB2s@QpLK<(8Vl@_yy@Vu~Y^1+b2I9^t~h`Uhe<$AVv8L+Fp}1#_|L z+$V>&%DPi{+7Ccstmmm564=q~G6@H4pWy2y%A-EvUyMG8hS}OVhz8R~Sn$mF%NH+x zzGoIiF7ep9+-*ED++jS3uD4rWQd%0Q;9ljO0+H7O=5Z?C1RfCI>rv`WM^LB*R(kBU za5^8Il;!vsXXiZQP#NEE(_n7NxK-KYxCA(&Lo~4RmE%^wkQul7t$?0 z=iWBFT|_E0E~!1PMs)oU(IH%Cs^!dQ^P6`a@Efa6^NxovsDyBBM<QCy+ zLX%P#SxqHM^^3*bAGpZ2&2Dh;4Og@OJAH$YA{rc0LN$+RSel#N*mXc2h8)pu0o4ZU}ZCqYVE5j4fw10daa#uVgEnFp%b@5tDr;POCeBOihHj@{Jue@vY-wTE zrRfXJUhcukKzIEC1?B*92O?GhVpmF?+#WeIYCkI6B7&SMtI9D%y&0b4MYu6vhDh}z z6`8Vm25Io^J2;(Bn(DGj;`!c&1KG)&1*vLvogc+@TV z3)Md;kH%mV#=q6qibOTVcm^*^L=t=(;1>g`r7zE0b3j|_zYv~I(Z7X2rh1Y8hpeyg zi@IsQURp##5m4F$MM|2b#6YA40ci>8?p#Vy5V@6<*rhw9n%fWvDz6$p_>tT6#IERvC-Eu_8|jQ+cS9i0)3pb8E4 zQPo+Z!}#c`%dI#D*X*MWgG27WE+k57=)br$46U?Oe5lJWZ{O5ESyL+%P2XaeNA3F@ zH^ro?d*)RBF)LwLmDn+Q@lCUtQihpVO~756mi{=tIyrs*8wcbXXPRD-7yPHp4&Z;b zi#{S4&Q1;%eoCSjoK-y#%8akdLe+dQN85OiQ3S4(oU#3x{Ln(|m6C#KhG)PO7K^tT zb9-@587kv0e@Rt5NXSOLm+L1(%tq=0bBBdsz@&_f!%|)PRU|?ZQlbx#+#bADFbiT8 zHU3d;rtwIm*7SmpBzIm?zjx5fd?I|G!~ld&@RrbDG<#khO9-OC)a{Aoazh= zZlBa$zgM}VB1==7Lk4p{T5t`%Z&m|U9S;h*BfrZyd9aW|Q(F4?%9H&K85!?Ko3?uk zJ+_o~LUv!LP%My9?!Rm7t2PxAA8eClbDH5M@go7z#!gA#!Edq}H_UO=_?Phe8yuA=q2$FaT zNJ@V*<`<52Vg~Wv>OcwhtUoJ9r$xC@%x%{fYY|oHq`~8RH*egK)roAEtlsT-xzuk| z=O0yD%pEN_9`nM!unR>BG1JEdnMN6B%IZb@!2+_5nGM~9!R~+xVFnsg;l;yyOpAQE z+YFZ_Y-^$b0Py9-!-Ppu>&QRb5;;&3J!P?s%q2e?1K+*7xNPB8D8i)XJ!KZ_Xq*i@ z@GOE~%sKvWoOt7=L#A9-mLH~s_ai8-=g}sN6l}tC3uKT$A<&HfpOW!r|7M_?2S7ZL zoBQE?79K|RX7uUfE&B~ls5Ls0J&K^J^^JcpiXNwJR!0dodEtnS&U6jL&-5gMfkryW zDBIsX`<|H-py=x4{usFc%}hw7nHW_5XQg0_cuESU??rRUJY)N0hHD+kU8i;8RoWnf zsa)YEG!P>?VA7?+Cn#aV4L2KQo~hjJ`UU;=b|u|wK7UG&(31ltwzj0DbuK&-{N|6>ae~P=^!mKu9MMJm$ zwyf6eN5{#EWO)?qQ%Kf#5(9bUoqn4DE-;^YB5zO7qxZLf;fywXY|6$o{0_-RqYbTO zpWs`wRV)hWR$P9rFQ|KqoGR(`c>k+yZ^m|h3YuC}C0~=_*IgeBG-6u{DaaF49|x`e zIU?sHfhXlgimPgwkCax&tlCX6bzXWOD-xn-q#i#pmXnuHsu14wuhym?cTy?m;yDIE zzl$O0&H!YT`v2Rcj`{I!Xi6~*tR~(-O`#{u(=hdz~oh^~?tDNT z_uwgdIGTQ*T6I6!5Kvft@DW0V`A^v*Wz7Dat?!*r(^Bo%7q*+n?&jnP8_-Wz(5uPE ztT!4sIX|#Itk98NMvYuol37Qk?mMZDpE$Tu)NZ=b&Y5OUG(vhLa0qKj=wV5naM0#(&xy8~6P634$t4b|u^Qryf+q`tTh?cLJ(b%x$gdJe=fR zt6bfI~$0XsY@qB(eMICNDOnp53Z*~YY#(T|j2>8@5J zY_8FVGau_;rn=&|*j2DJqayxuNsWZXGGcqye_iK|7iQBvRk8rWT7we+n?dabp$fm0 zWgR~sHBPy+Et@wUU9@MI3d$gk3eAu*?r-T>Epr=nRU$s!^R=y6oj4UKSy*?nkK2mJ z_uT|#&;Mb=NgZo^iFw2lp%z@PK?XZh)|1;e*{3USZH4|AU@N+L;ilZnD@vq!E({aA zeBUHQ=2r+Y2WHHt&+b{ZMr0HGgWZGk5=h$iW{^7*^=YHn`r_)w(qgB)Lr-ydK}JaE znr)swMNVnreiOjIzHB8dVZMl)@6`*_N312L20rOkX;5W%$ZHF*XxU$IFf>}5EffnU zbwz`*({Dwm{(s^LW3{a^T3h!LS%!4EMa>U|F%{FXE+gV6Sq>*Cg(WGGd&~R*UOtRV zF;b|d?l`jced?+kgv1v#aN%L}*~_vxdib~J3Z~xu5-8}%`7~f{`K4J~pMAvh=Hli; zfMU*BX2<-|ip=#w+^jM(2@6p>i7kEodObElo`q@aT|MB`Pzsu=`p{bN`r5q(pK$mv z=Mf2@y!g79=~*y)n`mzA_xD+3Z^<88m9st3RiRtkQ5{#KaOmBj_#IrTP|_GROa#{r zbykFo65xVgPwYt7BU2|;iS46&ZBgjG!f5(H^_{ZbRuCbkP_`^H+)5Lj{e0UyUE^Pl zr+>ovlX@Pt0Y3Kc+ONLlrEbesJ~r!c1(nZ6UM$c&rrr>}f-~k*=iXO_!R8~Dq%vZ= zLI}!NM2t~m&F+mWkGIukMn!(8en7qK<{0tBgIIIma>1g>CHV}IpbU=yeZ7@(Koz*3 z`ID~Pk+b1OrqxNR`0Q}wBQDgR1&30MzgSBc`k(myq(MCZ|6Y~pK2Gm#=>Uy@pf+7h zv@%1VzI8Sr?1HjPe&s;G=U=v^)UmV7+oTJgrPI-%q9gvCt`n!#X?KI2!{sIsNrJ4b z#Z1S$duV)NkObv78Ve8^`zk-Utl!V+AVq6&Rc`i2gbv-n*UgubdvwZmu@Y zXEh+Qm+$&ec&&OdZ}HC_Q610*)sP4JGl2B|3bV7k~6ywVNQ0v4KWlAb)E9 zU$RwComja3vyEsqkEW@DtFFd-H0Ab%cR0)%uhVIZ-JxWG(tT6IVXWqX?oVc;A zZOPCeR=;(&&4xEERDA#gU`%V|t=f?lBHuF8^VZIQlL9Tgx%(c;q{ClX4bC%f(k<`H zZ^7OjwDl_^-~(S;erFLlwhYr`RoI|MbX)dZ`VQNeejHQTyaBa~44c!R_w`;9;ss=W zl&%iF7qMU9#(8}4-NlaZTf%oIH(e*&h_h=vQx{yct4U#p!nd|SMCpIE{p)(z(>6U% z;TfZW*t_r=@dSzfcl8@A?I|OJ%TB$Jp1uE>-1+Vq**+3E&97)=0BxS09G|Mg59@JW z4i4kS%dYI(5rS*pR9{Iv-L)+A!k+GlHhmGS|E2upIbGPX^fV>KLSJ_^s2c+r&I2%H zWqhDn7PZniwGaUdTglg}m@gVzB5@uLdUepDdI=_SM(<%}O!-1VUfCjQPo&oI`{s(0 z;&bK6u=Sl+{Q^5-JQw{B-Qb8mzppwLp)Cu8L=%-|1u1gzu$Ey$ND|F?uT-z)Z5cXa zD;`?&RF@(&V8D(AF@r{v4UDezF}$@m%@ehu#pr_8VI)N;y)UC`t7xBcq4xpy`!(Q( z0$2aiqkZ?@=r^z)<#C;yKI838xMO2UIa45-rf^K@t)2Y7LH6c&R4v9XnWhvSbf?FZ z%}Ya2PYf=DVg=`iFych~*RQ0cD*Wb|xecb3e6y&@Y zLK9&9<(EpIme``l!n7V1mVHA_xV*iHdFF$q2rveUPFVg|^(YLVOFKJmjZM;)%BP2l% znLZDs4SdT$LjBaF=LF#Z&0rvM;?TrrW@9)w`-wm%`q6{ey;r!dP^&(fzNSF%&xuEq zcl!+q+XGFGc3mG0K?kuU?pXRZhbjdsQVEgwot(%m) z(o2*I!#&l-$j93ugQHXp8);j|O&k5ekAwmhs7`F>#E$Hn_SrdPnHcA{^~h2#moM5J!Nxvz zP?md}q*ef3-N(uuf$i!GKd*+G*iSaxzYtGP$kw--vE2BV)M(ZeT9g6bOSg&u(Ak%H#kqwRazPwqGRD0lQCN^CGVHGmK84IS}O`;{Z zAOQCEs7GUk@EO)}hV{V%*^d3Vy~B472s%RL zqoFQ!UgqiGI-{0w@5HJAM9S=Mo2BPb;KtjPPg{}z3iq6KH3a6=c|^b?b6Vk zEhiL~X~akTs|H!#K+m{?x?dE+x`%2%<~nxQTnl#}{6hN<#2HP+*IIX z&JQ78s{3R=??G-cy=#hu>crFB@V8=bzrXirfNR%mz-&@%3@A;Zm#AMC=WeWw?R!X{A4 z12NHbsCVf!z4>#~G$dzLFaU@-2lvZED2zw!14>u-2(wuXKyNtQcUIOw1OX7qV*vi& zu;7D-t?mM56FRs)POHH9+2t+?u|WnceS%J_fa}|FjwRe}S@_g?X-JiU?YCsK@(fi>Sel2O|5Ts(22*?5R@0SOCO!xu0$^I+ zi#g7KX$?qgJ#Y8+uRpP+3#FOaAi49(scM6#Frix9_?-;9{g+T@pT_}B8WdwDl0nLS z($kJBe6>&4z(p`WtJOpkvPR%~`+RwGN~rE;p!sU$XHtHhk(P3W6*{Fe9j{3Kh~hrb zV?A}HsKle2dUu`KOGn^AnZl4CCc{Bde#MlUj$rf9eX^LD$5T&bh=7h1qIvJUFszT1 z>vZZLM}xS#0iv(jbOdHrFq%VF)aCMhM$8+XT3L8v2U9tOd zry>JTYP#Qenpo0=1Z3!6t(nwVH8h92R$FZ*;pkA~sS!JG_l=uSFcLe9W6P#3pX!!N#gzbef5c~^7xT1Gk-POM54XO&s%`WJqZpi|l z+*s&GGW0F^999AZLBgbZ3o1Ci)$CDu@8eF$^(mU9+SLVfA_`wvdVKU~J({5X(4)Jb z)T<^XWL>q}6kUifWrr&PD;_?kjp*$>RjrvoI*+w{Tswg(3F=+GxLk3~r~G|NSq-}{ zgLBFD>>TIo$-*M+OyHDkurwR*Tx9&eIji7l6hTLxbfYB9UShn3)ThoWi|M2b6!sF5hhlTv zk;9Oo?wRo5d+qL=P<4n|0&b==zg30Yc2boTg6C(XGU^3?Vz@Q>_TvM+i=2YAM$9vv z;03lj17E*ZylH$!G(rJJ%C@>nW$X53}F|V82M^ECt zxzUx=A%b~D16S#31pys7i!M5|7Q706P#pZP(rUCN_>;s=HNax`HW z@$g$-J-=Sv`r)GY`LUn`SfVR0^Q}N+*+sw75zn&R z=hPEOt)?H{kxN~ldq0>SGdwgFR)`V)HZLI9+m|NvQpG-N(IRSs1=2}U|2K8+5R0fT z<`ik!9vp`z|NQbGf5#$c$)_-1_PCzlQxO6&ShDL&0(xfCs$E}hW)!t0Aww87#2=?n zVddeg8f*5*(rW!JsHEA#R3T}8p!c&1CQ`4h)va-4Iw6{LQ;-5 zf>C>UdC~@X-{wt~j_L1CPR7ac-4Bmtx`ht8^z73$1z<-4Y;?=8QpCQbCYeQ`>*@KN zfk*=GV6rSEka+@wZ~v+-11CF9pY<)I3EVt6%}foZ&Df_Mb6?Ya&HLug`udNnx7Nt$ zqE8&dPsQ?nJ7qVo1TVGuSjN{JJ#i^EBJ`ccjTtJ$;75o48LD5moGL5Z1)0sfoSa;b z0Lje!7p>Kq-XBhj`%h14%q!Au?tjcUd+sx@eqe|xEqNqji=JJb6`S84akZ)bamWQ# zgz(@@Eu;+M+qhy~8_U;i`$v`{R8qP4n&}cdT5jhCUf;U;So>3sLo3&?VH0uHVn4d> z{l_WhpJ@ZB^QD>y3GXG0GiBcr-@@WY>#?P8x}Ii0;LGo{ctPvC!DZm(#-iflqF3CC zS070T_8sWHr9Mo28;SPO(7Dk#g=)80e1f=P2-P=d=eV8w!^&w4ydiqFBm3l$+C)nW zI$+PQT7L8<;ZXhu@oI^F?SVQNd$c;LxsuQT7nprJ#s)^{Fn=N{9jmkX66IHoQjlC# zTJ%Lk3_-|kIjaf?w|^H$(Ysvg7}OZ4_rO9zKR}Pg7xwSXo#;(n4;XQ%u2TM*SgbtpCyh!(xZKY>dc+vni#G*WlmhV35y1#iw1q_3Y#N^wH6hn!3axXt|M8^t?YU=v zw|}@Q3n9som;NA5PUjx&@{%cPjbw0in7Gth8Yz!--CWab+=iE9N3SD?9EI=;&>Hap&Kt0DaDz1;WAvSae&< zjod&1*ez9U{t+{B>Z7bgckyY`rc+cQR=YElTZsUokP!16nXvrC1mN%oBmh^+EsHTr zECi7I=WVSaIhH-{+vA=zWw$Yk6x($)$`(zN$;>F9p+dP?_4sU|RQDXqE-Ga;p~i%} zLCK=_*g%i&VBEvG>MrC0^LYmLjT)h0gMz^g-BluSYeQcX%cnv|_X$@p7^AIMP94+2 z!C|dLs=c%Gj|y*)`nfMVz#C8AGguACh!h;240Z2PGwIHrL^H8K2)S^D)ZCU9QtM#M zt;+AA9A7ih`gkTQL%{c7!7{ur_ar87oK|YTL+ML|$y{aYX@zqcwD^6;RK&*8_LZ?A zlCzw5)wH30>-zf;V2-=3rpl+t$R|X)b=vcdq9-1dAHa*|9fbk#iJ?V*-$(aZfM{Oq z9Tc+WRhpD*_x)ny)X%HSk`Xnkk0fW~E*=4*JAVc-ObU+>XZ<175#{0>Z1bG+q_#Lj zH1Xvt1GVu@6IB2pYaGo&buLBM%O123#3g0pPxI^3o=t39qw$rme}1!(CH~0TU4{2guWba zv$xYRU8=k+Ki-V-INh)54?*-KY@;|XMxy+-enD96{`Ndk5o_t`+x@i@$eKOd_%7x@ ziVA_q-sYuC6S4JTEgcKR6SPWLmLU_zvAoJZbK3ansj2blig_7Z)OY)Ve)r}9=RM90 z&kfzjrrq$2JSD4?{tQ&G&6`t8ybms*9@)YBj`@#JKet?>`nmjJXTwHwpM_T3guc~6 zDYG$A0F5x?r;w(4rBt#xBBD_i1A~xh=;7)!)z4CEbQjO*XE+`mk0L6_Bg^9X|-UwG|_Ho8C^Na+UFWaM|59Zr5Yb z)9<)3ldpzm5##wc;OKmnZ@{qF^2}x<^}T`lN3J6@{>t#_soSJ85K9X}xjslJ$|MW3 z7%#~3Y`G`ICJwzpu`g7+tRvJVNKV{&nCT#dI8uhMj=K5XE~rG;*r_(sF&QLn*|rw? z-1-K_x6L7nCyq+;mnQnmYsOh5HvpBU*2sjBIPCtG?myA7v5z=3@{_H{;HiEDazFZP zj9S(ExF?V9n7p0;aBMYJmax3MTpNblZa|O=9l|;g1D|8U5kLP&lj~DTFLE-w^SCew zz-s5b;;)e4L-0?Kg06)~URmPm9;yIR{oE&#;adoQc8J!rNl#a3) zofO2^9e2!s-?hz62lS|cb^STZx3W>cx{WRt6}~rctnRPrxGm*0i-2WDDXOA`prPyz zy)y9Y+g!}3l;SXBkFX$u>Bm7~J;1{~vNiRib#t>xGJ#uz|I^vyH%-rafDgjIO9xiz zL)d=U;A49#KyW*_b{OuKK@&*3f(dej8LusVe3n!bJhY^i;qNoE^*|BTJ*MNxZ9cZW{qHunw9$;suWo!!=MXlK0Q5M&h$rV9{i3*-7km?!kepF3)#jB4GK98kYASAa*pHI&(M1+?Bt)drpaM(-3n~3 zHZPvHwg{U=G0{C?voZW9flYn7u&7RiqRMStNPRD$tFEvJk05xdIod}GYqHFww2>N~ z(fxrc1{!(1%kVrha**G%TTIJ-WzDAmk5vn+pLNB6)C`i;BcX-_Suhw2-rNUB-DtQz zR~g&wiZ~iVb-QX+c0pQ=0~x3u`k9LlVVp~01ICkYah9|+^K{KmhhFF^%nYyOJuZMN zDNvFm^f;g8Z#$iR=J>8nk13i0;}H=?&3!tpmKEu3_nT0d|GUT2u_wY?Ui&Wg9+G51 zktiaV#HUt5NHi^O^rPSK%PZD#pnT7EPCVs@OEd?+kr64W*(cw5X>s+k{dFf>$Vqn{ zW31@tetBc6tm(^6&32|2S|vd)0VEj z3thw~HY3OFGeS4PYXUib8q?Qt*CGYM@1;Z^MbrVi`q+^wzhREN!#Q~SsS7hvlLp}S z02u?fXzszuaFs90*{+u&m*|qgUmFJ4u2Sg!d*p)~w|I?>j2QoH{UIwt`!BYjHQL&e zUQ@;(IM^oEnb?fDZFfT>MHoq?b#=uBx^1s4tnDoEEp2`=+BrbSnQu-fl>l?%9bln@ z-CKI>-jX13#kO*&QhPF`nB|$nL3Ky}X6%aU ze7~D2$yKr*e*#3XvA;6h={CQ7CY^OO6a&Mh*XOt#1TlH*bQqHdrkKB&gTHOLd6?I+ zPP)lMVwJ-p#cTV9iB4vWyv=9rrZiu_e0g!gaf7~hS6lNJ;^D)hr>tJ{tL__5FQLR? ze!zU*lZAjP6x18np|HzXPlOAxWT)>#Hlw{?>B+s@1BdVK?b~u;q{-Tu>E$yV49CV$ zY{$aEfXYWjFjGTx;D6UA5c!;$aDQ&U-WCAGzT*-VOKdFYsUQ(ruz)!d5Twj{C zw8SeuXvK@B%g*{)$~8SDDfkbD$NZ8vUuu-kE5Q~|#^yUFPK%o=u@9YNUA0y0?*TKW zcngb`kPSA4*cbh#oqr}N&KG$I20}*XSG0le{*6$HKTc;w1l|KV#nLqOGZ$t4nX$QD z4ps2zCJc8mLFW&GWx8`tUw(RxilpKSu0_~V8*Nf#6T3m@nHoaxF!;N*AMs$d#Q3oT zRi>Z&V@~+RqZOjz58DXD%9rjsuIX?l>K_ZuZekEtoIF)3^7U6)EVm41$#RXOEa;{k z+U5m%3-Z&>)tddSfj506=lYs~>5GxEOAW$LK&CNbOkY7#MA?c4G>FLjrJIR&^e zB&nnfqA1e&NO)KvDLB}?Vvp|9737b@=);W;i_Bl&9!S4_jYnlw(Ri7w*~V2C6=#6v zUu=B-~-fW$C5@!2;Ck8UzheK9pm+HC|MVCk`;Hp=FVM4>#g$x~~vy#k?Kei$H z$!zzlg1O{Ic=2>Do+W&LBTw1ErF?LDV!8DDhvMwXgT*W_S}{Zz9}~4%-U2=;q@o5F zZL^mJQnI$xYA?VR5DAKHhgq|YPVm^*f}g46#Rw3qF%V;E0i#=Ck>pMlOCV_QzC9tC zTd4!Z06K=pzG(44+~tJOda~w~6JbHcuFDJ5W**%osx@#{5B>G^v7{#uYV#U_>QY4= zT^qZiGnEAT-laRob1d>7KVlcoebsW!OhXXvBiuhmbkf!d+0f` z=+8E8C`Q9?%MxLpg4Di>DFU;A;4H7uRst&a3_e+ru>5eie#7SQQ;mLBC8oWIe6pCP zX>f3j#F!ywxXwpP?9SUeAHhHhld$7f`l}ncVQh4v;fE1(3mUH?UfC(#(#V8+k70&M zXr4!SYW)~$*ggJC%X`1JWTrRNX>854ujkFJ%o3-67A;U+U3B|1Frz)0^WgfIcI`G~ zLYX*4tMNg9mL*zU^{L_eMbQSD&s1E}gQ49Tf}igxB<@q@=+?6^x22H_rN0Oxg=pc> z$6g!2>t|Y7ywWh_-pqsADMP8brk|B&R)5`xT1x2@8{zTX;_80p7;Lo@{d6ckqlR{K zFWV-WEJl(J5MdGFO$j;!sa`h5Ae&%tm-9z|Pji6Tr=ChUZt%aO+fA?KZ%5xwjeVe;vb;2I{~i{d5qAgcKd>fM!PQ=*9#@HcV1*NyVMjUDmu<}&3^p>Lki znvqMuj2B+Ep+?zE->^4?*9KBUVu{Zok|H$g~%c2AJIyCS=V2bJ|BqTler&HSwobf}XEHA1-}LqVu}5d$7yaKUE$GT{1npc!@s(F6bh}G%%ZT3Txu#Su1}S-P z-n&1k_7C>z-34^+_*>5WcEO_)X1l+xZA`g6fV_QYcqtmOu-7SlG~WMYCvNtI#q(}+ zmj@}&LX&{ml*;Q7gDP})WXWk36NtcIK~f-Wwr&acdrke}!9@*{rj0`1`) zqNmc_dVBSRScuNUbjUSg!A>Rl&*3zR6sD)h zKIA^sLF^lK&XNl-6FS_Yx81kxuUxviVfUdBZzSds&z9rQ&m{Gqls}>WI9ALu?!0=P zckMAo>(C>8qvvhwL#tmGJZ74s7Y{y$m)M@+f&LBBl`zJ>_ojwhs^q`4`aF%_PW`5E zj&e7=Gi&!dhES!}Hz!Y7xn5- zb@{hy{v6JrzHDhi>e+CcSRA->+d>pN!2r>ifWELQ_po|!k5qL=dUI1VYE_Jk);f1p z3d3r9>vGtgg;6hZiO5$1CFrFDCr}O?_2v}xmK-gaLGYEqz*+UNzBkGD`~SWel~;Zv z<3k<0D%~bhQ%fO07i^&JQHVs$W(SK_({heoczFMho!Yf}xfqRrmv}usB)ujm}$SF-> z*kv+vppmccU+G^;`Ffu>s#D*#i+zWg00@Z=(mAm%a-(~{!v_kcq>x60{}W^rcPBZr zcJxYj)q6DyyOv5^f_0tFq>yoHt$;eZR_D2U~L)UZT_0O~nyAF>*?)ZpQJ#g<{9O{|}J0|?!9Wz%_ z*mODT7J2x}s@UW3p3|8>P3}7W5SNx)c|{`>e$tPZ630X$r_hlaF>q16 zoCempR@Uk;-tgOD_h8vxoDP}&j|qISXrBH;0r9!F#X;eyZ@cOB}Qe4dBURu>k z+Kh%JR>P~-Pog^Kzk48dTur3AdZyz*Q_HjK!CQL+rgz}jgg~gaFMNK0?4>!# zH|(rhz;0~=%u~GC`THePj_GoZcMm&CnI%zU%|^B8cH2u4N(AKRFflIO*v&n=o!T1& zCptb{`LlyxIMKd@n6PnDl(qx5i4oiP6+G&Q2wbmiZ;y*kD6n{@`(e5;jP!z30iPhz zM&|>}-n*sIq40e|4XaSoqlM->LOs#6@@FTlM8iGFFEO>|wk{7K4K2E=9UbUJpu&iP zhvjXBI&g7wg;Jv&k$))TdQAjt{sMO)@~jDvbhv+05;rMuiD{ zBi)FfjU3Wl8WlNF-jh12%2ofw2~$^p{0?q#4HApR$^P@XbKBN8$bGT$v&p?Dya}M)*9dBxW#_t+3f zqR4+r0K2)#Ydl&f{%>tB^`yhfM4vw%CM9G+XcTR8YL+ZLoN~KA1|{EFQF%WOWM zk7Hjx-7i?gmx!0ETv~jHS8)}W-UJs!vy*5%i^4_S9_Aqw)?wpU z!uB&imaFf3PN|R3@tEd&f>A=(QW($vSl@P$0Hy}m18DUsh{<>hk?3yfDBHh0)Y)3- z03Wy)*Bm^Fi@!0#zf!MOdc1EePV=cN+~O1wQSiVJ1qfQt zlLUz~)dS6D+gN`r6A9$toZ9w?{~MUiWr$|t@sMb|uC+4c*?dgq|8SkX&eV+?93E?b zRJF{r-S5U0+xw9yGH!yegB*JDXPt-);OI2FeFsYGYlef6lDqzSXEF(?SXy;*xLx&Q z3RA@EXHfs^TA-E=V_0Mxs@3582xG*Rja12q!C>C`sp!F;$07u&t@!8N+7f|5?Z4An zoo|$46UbGo8J@zf_Ipmf&iF|Nb0Vt_S*m04?!ryg6q^OE3;a-G$mThaA7EBgSX^)% z4fS)^ev=&zWT9%6FkL4a8k6LH!cj&0sE)6YnEes9SLB{b%js&c60&YrNDA(LTBloO zZ7H6K8ExDy?3#NK@tKq`p#S6RAFMmMOdP7Mo-i?k2-o;S=eemCBZw~trSEw-uaCfd zzP&NP=w&h#xSFDgjmZB>}WOL=*d;!@s`#;V2fv=UcZ$Sl@X$ z#NGgc)oUCLfZRzyN{S)1gbaPHt11#n!(zLiPE37&RL&+%6OGTeW+>X8rM3bfBR z=lo96hZne9BPdBzai{1le0|`Yrbk16P?y!cd;Qzd6Z`h}@bOEYDM{RW7c$W(9&Qt-oG7Ncx^VuE#YZ7)j8<(vA4v$5xPd+hlA|e-Ac9_SbCb;$g46*qu?~ei z-v!pc1%aVH+td*f8Ufob`{-@8<4HDjR?AZwuxQN7OdyqMAAJmTz^M!7mM12?gZxQh zM~q|6h`d@jiWZW2jv;`!y&7c-9}mF>$|s$);SCZ?aG# zpcZfQ_)cWkXK*{t@z?)yV0lcRNXKf1JUTWJ8_9FwZujvc2^b6Ah27Z6JxK}8xE?Po z<|pwdmjH`u<7%0QxC28DtWG=$?z?1U$Zbu|h%a@dPrJzcJMS*M8x1b`Xk%A^;Zi|} z|JV`+s7HH&$4Brf_XhUt5fQ;AKea-r@^Gstu}iSaMF0E^={$gB z(d~|(y%1S&2$%=ow*o4sqKLKgwvc26dzfzg3nXF(r)+aI5eYy7g^9OS)rnW|f_HmJ z=*wW|R|?qQ!H#QrLuQZgKsBj{oyEWXr)lk_kJ6nNtq^}aIR`0WJJCFbvpL6js1HnE z{Z>mn@_tTQ+{25ht$0*<*a7=v@ZK#J@cv~<@C;NE!^EGij^)m|Hkf}H#XB{atefr4cMDfX1p)=^joFuxi$g1t&H$Hv7Xu}lO~+B0N3 zIE1NG;9xt2Jl7IY5PlI;gAMgse?vX*QQ4cxb$tqd_qa$SBh9Y_jee1QQWkV@i(wXQ-E^v6gSp+&nIn?mb!L!4Y z2$Rf(BNZhQ9_@wKMhp-z&AFy9@)Aw%%iyATb?occuW3e*yylgBdIU>i-lk^Ws+cur z-s{;pyj!*CZre+YgR6&l$=GLu&ZhsK@PGam1p1Bo9Qw9xi?_=7>TNDZ36%AiX$GnkOM5GF~fZ>IK(1 z%j}goj*pS0!kU5-l2Y2T@+I@qB-WSQOntryLFR1?(Axy(cNBy7UFlz^c6_0qk+Zs= z&J16ZD>#`3cT!aZk)-~$%R=Qb8&bnaYx7kcBkeNV~oP?yw!dfJj59+kv!)$n#L>0hRlMuI`jSmZT_sU^B6*?BCx4{V)&ebM~*@t;PW3h#Fu0Ys+ zypg4VV7&wcHeW$u-j)zbw7eQ~#IyUL)Afss0@>GN$gl!{I8PPJ(^e!mMfK0KT!ruo zm(8@Jr<5%T=(ovzVZdfN{qxIVC?13bSH?SGQL6la0s^4VN~tQe{Iv52w0GOH(h;=z38|n2Q2?1Kdax0Kp{LteUUFW zUuiNLxA~Zp5CnB#S3!eK9uzV+D;Wi=+;l*P_^NJFGbow1{^vOgbyN3@Sx|KSHDX7k z`2({HFLj5bs%Q_$yFygQ2J6lhRFsWZDE(og+!ah4tM9UgIgZOeq6UeSz<0IUUQopT z792z3NdRyH<{#rD;&;W**wtt)FoqqI5Rlk_-vB}%V&$<;)=s7A>LD+1eK({%22hQI%OU5fYg{UU@b>+)E9_w6O_H3J^7>zS1kL%FsI|0KSzWnp?n zU{JO+U-A}32`XuV2zWz8!4Y|p5fL}{&Q`=lCLsq01lPOZEFh6%-|Bjl8aFxtW@t?HD30-V z!MYciI3f)>g1n(${AJZU*C3Gh57vsN$vd`Z=ig8}JOLagg=aNqwqiyokYUYUsZU`);(6TvORQpLm0XnU zV}Kxk*#`cKiio&>nl_=uSaTi0!aCrVATn||qNN2nX^(mU!c$Y%>;L`zmdo>rj&OtE zjLbP}Qbjr}kkeE35~gEEJ|VjJ9{Z0dfPa9~)Cavj$8v!K$B1dQj9&xkz7k`+kG$5g zHALv&O6Z#B@C8snY#7)6ns<232W5`E#mabxO`DIl6LD+u>?!JM&+68A^1r|R|L8`> z3xZobV0bL+e418rie+zub@Xlxg20#5vXHcTV#Uc7<$gB4n?qD@yWVNO2Ld9_Y4PR+ zr!LdY2t&}A^|jB_pyN)o|uq(np)ZI_l-kOu6Z+1NiV-U1KM zeT7^*p8@d9pugVV;GV`p5x69wsOx{-BlWZoZsQxKT+beSCr1m91$K@VJqNq2{ zGT9(+_gz$~{r?|Z?;THd|NoDlL+B!OT@~3~sVFPiTU&%AWFFbF=dme8WhFCZhwQz_ zAt8J3afoAc>~lEIIlt#Y@6Y@Fz5ULAonFW5^?I(yxc0o}po`y*yA%i~~aZT^16&b+O z`tnzP=!>{{j^<5%u!$I6NkY|h0UhE!k6^4dtKNsr~FQi^P5gYV7~R75X>r9 zuWDCcyCDzSJpTE%U}d%W_IwR7)jPngCDC2df@E5Gfcs0*y*q98pJuklFKZ%vfOF=v z@00sHcIXS(HGSZ*&*n=fu8NN-nmJHvOp3+LvnD74tYvl+VV_BO!GcZMqbBZPDCc0?e1hG?T&tZ$6f3cdR@9xsy4WZ7ax%ZCOvxYsep)op=iuFdj0=Xdt zRVC|U8+-pJK-vdv!}gQ%QfL7?VqUGBF0BH)@z?Fy-#Jn(``bd*V~h~M3=!toS2%y! z?-&AdugaUv8@j=n;PNOYW>P+p%AMN6KsPFXSxnZKd*nQ4)wrd;IamBv&6N2CRyS3^ zr1{fetA(O1`TNp~4B9q=JEF$dCtNq$TZHz%7)%Ms3=i9+`{LS1b|E*A8m^pvS{{n+RvOTaaE;5x~D0P z_L4IrwZC4Uge`Skc4}C3=T8cRIh>w&3X#TOh1>YMKgp(FP1QUTvCb0*3 z7*clXf^H1-zIWbq%j1G{rM=GCsMr8nUMGum_L3q^+K@9?rQ?*C6oD_VSs+C8kL*@k zdhf-inZ*bC8`m1Gilg@`ikJmI;+<}O?Y*O*Gu3#_J2+SnGGE{v>^PzGozLlUrOn2L zx-xN8>86vxOJZ>2bmrvRZ$h)T9zSGg_9iwxkIqqX?;Q06^sxNCmQpwJ=!}l+?x!^( zdO=_B>Fh5U{kP#b6r!CH3~r!NY$}_Z6JA2%b4|+w%|XuSa^n2bYkLL-NJsICMh^R< zZ53?QchgzLS9c&2qB+!l5fOtBH)Gpy;I3c0^5;xBI4Lq$F1Pb$3OI$yyr+%)L#MqjIn-lPy_E>=%^rY z-~m`Z8C;3XBUkoqt z3%UV|#7~MmTZ7c8?pIpmZ+`nhim6WGZgTt?2miPnI=@Erohu2~^VeH9eP+dT(m=9< zCqRJZ3iGw#S-CS%dtBo}+Nzfg9{~ge99>L{w0?*i`8FhzNlGLXZZkqj)J00ni_ZO2 zS3&8xaLYwgF%PwpT9#HqSV}oP_(5J1SO2`wC!gTM`pl^%tL_~t^OJj<2_7H(Vs*mU zWgw%d9xWSO9e7_Yr&=KJXEToC_fzOi#$S5e?d;|Qc3#QI3wa)|PSqdUO{F8k3^q#$ zov+b=neE5#%Me-0(S4>ftPs_U3Gy7QAZ@z8((?*r$97I!Z3m0*Z=aUClTB;f_3TSz zpcFfe18qMh#c%g8f2+3V)QZyGRyw18hLIb&?YbtrUG@2kpm9Z!FW)IteH3DNuNx+D zIAFVAnc!Y!J}ZlrC|y{7(7yUz5Ew)+0CG{DL}>{7l6SxDMm0F23h?6=%wJrpWm8Rl2LY_hsPd z^u2J#Z;wW8Ni5Kqy5^K#pp0TU-m*XGlS!wy&O3x0e*8S!{EXjjejvF%ovUe>&~Jzi zf}XdtuGlJ%efa5ivZ=JHvoUwI zX4m*;GBe=rKCXvCtRuzyb-Pdz_%$x7i&ZT`tlaJER;xwxrSEppPM4rJ zdDKERbZI`r!UPrQC_pFhV-0>O-~32fNZnmbF(`>8orL9vb+*=~zkV!I`xPq+S$4f3 zrc)?`pTiF2)*A|iU)+s?vye^i1$HZq?lYgMA&QLRfn%#cs!~CY$TV-_S#8nhdq8x; zOYb*cg)6pp73`Fd>{JrXEe;5C*-B@&YxuSE*3Rg`Kg!-lU*WKc8QtgoEp{9pZwD2j z9%I7}o@q@5f{=tl^CH-3y;`%99S09qkClwPdE-QvdaYF|PKcSFi514q5@B=S)raz~ z-dF!?A&J;KL$=8d zfo8UY!zia{f%$cJV;fcJZts@E+A7+efk+_L)-?O8!G@Zlg1w7$A0-r` zCsiBcn{;}*@_RF@eUqRY7f~Z6xKh;l9$(rm=6b;V7huaa;6-gwxADKn^FP|0(e!_h z=g{~yW?bXR24lD%87i6R7>vJH4!N+0gk! z4H%Cv3XL0LQ2e5?gX?KVbgbWPT;ZYDf3`kc-vFyzsameCdFQrC7x){@zze9u7<((Xw)fL*;Sx(QM?~(Qv zR^{ZYMyG+LM5tSyQkz0IIf$N#l#SjTjE@k*Nq(s`WEU?*TxF|oHm>cn%=hnXbIGe* zOw^9Lhh}?9K3$GUA;0)1$1^Fb4>?pYFXex3z|OLBX%)0ZTn^-vrevv9kGb2vKgl}9 zuS3Tr!061(lp#0IZwT7EAlst)(=GiJemdLd&XV8Q-(L zR;#&Xj+UK;RK zn19TWB^E8|R271Z+VHXu!=VQ$I`|X$TMWE?4`^OuFh$^4j*07t|8n`xBcD#`=$}>` zEG<4i1R?y-LLH|5LJDqGMEg9DowbTBN*iLSVcy&;aE=j7Pl%xCD9L16_|ro{g^VB$DaC)Us+rta)uKZ`xSC zTv^@Xjq~)1!_=uKeoyQ8eMar8)i}@vH)k;az;m+{SFDs9&Z?-HXZ0g7F&zvF_B)`s zC>D#!qI?l|8zOU(TpT;!U>(E-F?jONL*Fx7&nh~WtgC|xf?s@}n(yLYo>V7Pw9jOw zmGUE_?HO%9T>06#VwsAs!XU1)GDI^~1?B=1v+_@Q30i(BY}-*Bn=m%XFIjAgD`KXq zFWN2>0fksTkqa#!@GAlgBWZ^d|2++{sVwI*^<P? zgsRf$-|?Yl#&Rc@ z$l1Fg0*^m}+C^04x6m}uOg{hu_7{&#ix;Sl@MdR^=&(-*uTipi>uavyDZJpCu)@i# zY*q<3A@;i!GfNTK>r5!ngNtwi5XDdIF5sKKV0yKDlHw5` zMLlbM=$Zp6nG>G1HPBWq&6e{(I^F?buu4)(%8OBiQ9<>hsDiSnaQxPBZ#3jK7;J7N>avK_{6lz%aQAK;*Ecn z{rqV{iVjeYrT7tr#1CHR^KBE#TU`aLGzGVSuNM_Agji^G{B zw}dVP6)Hr1E;A;pbQ=7w(UhK!a$xfDo!%WX4>F_o>l!^rmLmBt&EqU^7VQx1)8sq{K4ZLh7&n?;HKJ3Fyf(19;&AG& zPcZMzave+8*A-80yAlkpuS4?IbJr6yc7~>ccH0)Z{@cwoNLONMj4h~BBzc;JJl z6&R%(wFo~rhX34n&X@UXhv`3RpFyNS-Uy&?Vq{h39ijGXRfSX86#37Tp!S-U(c%U+ zQt(qwuX22OVfw%N+bl3lMEf*u@sR#IR6>yXSwIfIGp?oUB$<2t<)rPdjOW(ganBUc z*!{o6{N`8*m(0xgU#bvk;g-L5t|uY1?P)dUsTkw~6cZCfJro(+9AbGuQm0}Yle17e zp1m5_sJA9+?AH#fJolW4ZJ+VBU(9CXP`$dg^=1HQ)kNn)JFqTW_!6LS^ZQ3avYggS z>Ug8vm!tchX#|k2rR{o(r1#Mu^K>ZRssm-Y|I}D+I^0czvl_RZoBb&o)6RzBHh639|_^R{bUS+r|IV;EKFR;XO!3Jbf^Pv{$RQdyhSoDCczvaSAC zsbKU~8R#yIyLnTN3akw|ijVokpG$3bfjEUXuOLqSGeOx0l?I7JHIp`Wj(5>yhWwW$ zdIrm!plxrz6AFzym|NGHe~6B-)gQ7u{yRCgA@w}x#>>g|XNAO6jJXH-Gz|+%-GNl9 zYvOx(>z(sNuE)r^#|~UK?b=lxdSQ$da;LutJ&C6l`#P|*K@l0|>Z+Dvl54=UK2@6< zB)}c@wxt;Ych?GB%1oDdHgw0#AYX#>6m+A8;f}d-=2pUzlpDHFrUmTP;6(pKrD_2V z|5YE&I9+QR4@gHmx;A2PI0esI$@x_d4${}}9-QQDpH0cMNd*Xc50lVFMP`ZlZ%AhDI|0R7WCwAw~>TS}cI%^@(%@S&NpwCBo15 zmc0JL&*kj8AAjX*x8J|s&M~O_I8EBcDi`L^%J1Tm9B}tJ|Fj!S8s+e)5%RZ}<4iV^ zkkk407Ni9@42 z+B2i2;T9};3Bzt+s z#JNSePd7;josE}OPQPe76A-ye!!xK|ziqPBKGY?3M7otb{r+r)((~%D&wkpCFKz^8 z9lCi}Nao>C^i{3EqXJ<~De5r`DDUwJqfGk=gp$pOh}3`RJ^W7xoq{;}!33gMzA+C1Y41bG|_P zOsc3#BT+O@f+ZAM(2HswAfvSl>2|sb-ALPOaPxYMG`0RYv-y!C?M3g+7aBqz%jS1M zkGkNVS7Awj=-e-)s-J}kNr&89W0|==>ksPflr1PR!`Y_GgPK3sXj0U-w%VxA8T_U8 z?fU&R&B#p-vSuDm@i?TK}zHtxGl;WF7|9svtlm1>IO5{NHNZz@!S5G<3u1L!^Od z(fGO7vJ}FeSy^9pF6PwFES%|%L*&3!_whT>>9B-xs+l76kT+?aU93(ySz{(BogJKM-v38-l1p0nq|hJ5%vKwfz*u9dK??TQerqSFV`;3}?ioa=L_ zP=mEXK4qxPU9tEr?>0hw!g#Q{!ZtqmRmSG#!BXt*48JO$-eq_18p=)79U~?>W4j^c zm5vuT;fn3+?Z6q&;2AGp@i9nV|A^Y&df2vqUCK^(c5)O682kgVdhvUD7WPjY5~Tp7 z_uiLd>?AE<%iReb?Eoa@K-F~j^5s?}q2Vke;{ozMtI=|cd56Uc#BKi7bwDNj7QSZG zZ0uU3JrA~uzaWJ$;(s5u`41>zqFOBLNMz&y0{=zv{NJS9}AtU!~vInpQ^XVvx>NK(pKc^&C8O z!TH*gPwfvlI5et#ec?A_5^8F_^>-j=sgD6-O9y);y??1HxZU2DtO|^`7Nx>}m&Lvq z0cr{7L_mG~b;#Yv22NTu=Oupft}e;-e9o?M^;YOu*%N>mr-C>!l^gQOc=xsgAmjGk2>jU0PNn0IZ7;o!`C_ zmlU0!#WAgB%B$!38Z>@U`JeAI867H;pd$7ayi#;L4jbYNizP~N@H_7G&j0d+;Wzex zEbS8lDDp3wX+WfLJ<-Fy{L?%wExPdA^xI#DuCHW|3- zLrSKXwKR=$r-j*N3fnA+%B&mC17Jg;G+T*i5bV3QcOJc}LK?jiz{i$1MLmmpS9t3P zk#ej8bb2Ck&KeZdEiFZ&B-MHGP2K8?zd||BV-=-y3yk!>wykGWJ_FI^7Qfa+0PrFW z;mhYrr^ff`FVg9kqD%7(@v^zpejzPC#v~#0&<7;Qhu%Q+jzf=U-~inbed%Y7t?Tb0 z0EzUQL4@gE)i(oCk22s$7dGd){{37=e^P_lqO=(i?bTjQsl`3Va_6y6Jd31M(?QXp z2C)i$9W$F5wi~t}k9o&cGMnU@^KT?6!&u_I;VtU=6w?hWwU2SQ*q)q2*i=E`2CFtA z(cSS?(s+kUVPbW4#%%h|x>^|{TtwaRF3b#WnZr|pmB9(VbA8gMWMTSJ%-WDlxmo;H z-SS-nZ%D^c>is3w6W{%6GLKabuCNl;^3uzIAoOd6NFa&PnV4!75(8}M{%`T z$aytpN=5HQ|Tl)~|a98wDVhP|6cXxocHT z!w&fobv)zbd;oC;SF0x1q+PjBWSMjEBLcEE=E!qnNF{R5G5j4JCc4X}RvXL1qo%W0 z`uEDrh{3}F`hbzwlz$i7&?dOtXuw$)g68yGMcJS3=$ArQcdQt*zI1$e3%aAKE` z#N5GXW8;{A)}c39swyVzI;?&K-1q=LFsl@*qh!y|t}>5&9uxy4=jmXw_pFE4g}gCW z5F&3)jScTIMg?^l*lgPyb`Iwxi*mi@n<6y2F2AeA3p6fvBpu zMbB~feNgVcxwDluH^uBoRAX&&-e%oFX5?odypFM8i-{KdExOO{ctgCm>22#vWPka& zx5a8xWne+BGP#UU*YN=&F36cVy3>6)#X>W63b zw#&x~O1hiLAA3QjI_u_qh0+&5}EKlgbEeUY^R|=`0zsbWzQ}-42{S z3b~C19|Z4EjrXT`BxzGccQ}Xd&V>Sa7bWLbmn+jCIlvCxq^-& zJ8ue5`(D5y0f&GXsegtP2a{Tjg4fr6e=AO~|3I!VrTKN{tolgX>)au?qM|Q5Kg9gX zc1B{^chHwqp?J_e_C&49BadVE)PevvcH4|p9X^32H{H|!{>!R(3xuw5nGT@hEBMB~ zpPkIGxs!3?P4Z-5#@qR&{xIrP5f7 z!Me1$JHt1|x~z;vkL>1$Ag7+}U1UT;er`izBG!$nY0_}pr%c85@!3Q%l81KE-NN^P zmt&Q7pILP%$i}r=Ns{vHnHe`V1JA$wnBZ&6ceUx(+^J2$7;T8yx$&byex+5d&DQ9b zA4Vb2y1LwWiHk@ob}=hUj+#lVn@oa-2e#<8FbK(!n;uoKxU9c_n|Kl9Q!`j$@F_mA zAt~3TQ;BXXR!HDB_PMQEu`%SG8EDZzY=kBLiExC?izV*Q+^DwkUYECH+&F@RPbOT# zqu9=Qa*94#FEu_klM~a2v#}MeLyGq8+J$ok5f>obzzq>l5nz1xPys=VJw+yh; zSr)u}D(x`<=1D?hohYq&iPY-nlz;ggb$6e_+wxb>jIia_vzHdJkM7^UI_G>qNu1A^ z@729;{8L~SXncLo=WOlcssHDn37?iR1~>V4`F*q5YvLONu(x99pTcoPX`0Tx%}rFU z_piZv#he`~PfP9IzZ_U6gi&QsZ>w<9MGzd4pf_i)Ta@57quy$#Y4_nMq#*McM<7%$ zyq-+G$sX9Qk*n!i>ZGO{yOu;BHunL7?TjBSF-(yh3`tLSmA=3j^R^QQ?a@3gXfXp4 z5a0*PH@Qt}67&o6%YuYQUeeO}J=|+Ha|P}imvbrwT$gc_kKq%ApGb^}HO<#N7H4)zoCIj&-$pi5ux4u~gZCr0riRUIZDZTypkFN8 zl}WCJQ%Svcg$U?3lgjhIvk8@bGT86UcERABQXYLl?`4PF220D7|lk^64*LEhSS{Wg7v-{RizY~o8IfD!h z8vIK%2WOe~=)X*ifuFDcP%AlAFD=SLLiwAg%`J#)i~p3G>QI+wA@#d~s665=g7?IQ zJlhE{>aj&Pt)U3dFmX`!ArQ+(0W|(do@?*6d6?Y8iTA!38BCwD z*yNpuVQd*+?CPR!3F#W>GGF?1jDswB-a9z6MmC>c!zcJ}IHC9+yL~Ao{Gn0X?bB2> zSCk8?eMf!I^9Oo_Hx?&!U(n6;>LP)7J5Nw!nfhWwEC-v;JvE&(3X!2ltyn+Q!Ru>+ zZj1JUO{W^zQxu!sR1|C;Ga(@X)Y#)%ib~gxy7`%gjv!*a!TH~aBoYQdL-oZ4zHvzj zJ>_k&)W@>aG3sQb5Av`r+aGHB<+meQ!A&f@Eu#CyVkku-d*4uHTM#}|#=&b6fGtor z<9O^(lWg47bcT72zDzYNdj@?UwQ^vZX@v8qm$?(fD3CgAfD;@XQaO8nZ3`vVPh!_?N;zv(`n0euh0_X7bo~(U6h0 zbytG!weAFkME4;giMZFci+e*B)1mETv2t$w&A4r~|G^%cJipdI(X?;A13*fL+~Mx~ z6FQiC)svokPXTq;ZWsElwsvJ?#P}C#++N0VoP+a1eD+VB`Y_q5@Pl2JMemN_IaZJI ziaUo-3HT%(=7@yr3@b7Ce-K~mI1l>1n>K!*S$a;udsGx%HV#oTcBBX|kuT zd6eX;pM{+LB4nj=@`$*hJiRQAFA6Bs-NpKb#+_zWA4R$SrS8S>hwK;h_rbuXWw=T! zXQ(7HB&x5gM6(IWf4fDJAojNiNA^E3mpqWXzyh?T{YpzyK;EuZqwiz32s_8P{wfSK z&?o;mf^5^S6DDt!Wsmsk!>ch)O|X5ZqkgTEljYF^HOfvYLFHgw5g={#=lsWO#eldGnBU`VwVrXI zeCh$0YJ7^WZDkY#pTUhd?yRhrXHVT70GuY*XneI#dSCt>a|lHD8gnhq1d8=!X~6rN zL%u}9(laRN0{0oM_mlqh30sOuP=wJkKZMb-smkSlQShJ7x^Ho51!6vLs=hR5lvQb- zv$$c}T(6Z6L`ua)yE_R&}|Tu#P!=Dwuc#?25W_0d%~=;f2}K0=+%dj(>*o@2l&>}e>C zPri;_f%pm%b@cpB*?j0mAjJ%LWaM;bl~CKaiixzpCD<2Nb%`-@FwpY*&h)wmu%dk+T+ml=6%GMPV2wUz6W7f>kk;iiBWs! zx=-=ec_kO#1IVp^3Us${ARl8U%cE^;Hm~Va*b9mXcbr$hymsDt+{k=+OKS!AFTPa3P-g9p?m814Rvi4wXMHs&B zg~mfuULD8M5x8pXj~fYj(dDL<@jLmKTp>iy_f?b|mG80Ex5uT#Ha&MR_mR}g5?#19 zg=ZNavV#q9wWg}Bi}I&#o|JOU`kHT`pAUg>zDbn*?#Gb7O1>e#`v@PT&j>rA&ljGF zlYKV7S-9VZ*;Q3N3&dSPL%`L9-xDb6^&-ofZ7s4VJUM5o+&+fMI0z5xh9{+1lRn~z2jJU_8oNyyO1qG|m z%w$TDa@&sPx_46=VVR7)g9GdWyA0n#GFF;IzbNakT;b!4_|Q!Itxf7-@2bDc<&8nc z0uaZ4*6Cpw++|!zx9BE6%a8r=uT>q~7v3<+KvKC&`-D#XLCDZR0x%OQRJ#rMq7 zfKtbKyOZZ0He27hx7^NGZBA5Fw0Ep@<$FPaZ}BYIJCozQqcU@q#NwL_8tgtD|BXe{ zRM1gYD*-f=l6ao5VhL8Q<%=1+$n*-XGs53hbR9mI^Fr1w0pjoXeOVC&{hz`dg4Ncmz{Ifx#CT>gK2nj$6Im^xa zYsRiPh|Kl_7VYA08PyEc#56W3*FNA&@uru~lvaQq^Cpex%F6xDQ1VNC$F6|z^;OI5 zFO(iWS|SBwH>;%Z056^PLQ6^f-fZa;SmGX=j^@DIBE7=S1o}%88}1&dj&*g?yHY8- z_?2r;3;4vy?$!Xc$)>vHYKfY}s~|tSZR#cKXK_sbm!fRukPf#F-eu9^E@O#_1Z*r1 z{mrBLBU`Kn1q=IWr&?~VAEE?{GF5{cFEW)#u~JIK&zpBEsc6P1eu;^D2#d;wZlFK# zSem@HQ-;xfZVCCKP>%HBlG)kth!eJ?mMONPC$T*Wnt87u7C(FXbiP(j{tBQ^`LAOg z`ujSU7%YeAxw9xJX+Qn(v`=?}lqwwQEkMgI9r@vdq9x&wBIVq3&&NQoG<_|0nol!( zIP~vvr4^+({o3!A(rLDddvk8fVs-Qqp9<<2N_-t0=z8yWuSEZ%)=AH`ELxfu21hzc z=m&^pFQK%2?!oi)?z{9ef6vQHSl20y+v5;d$WVztqEvkw#1KRy9NbNFmiE{c9b@gM zsF#w;R392*7+K7Q3_<5Ng6_iBzv+o5@uW%qj$7kMs-51B>7Hf0<{L;Telwg~cWCY> z$93pF(<0Z~iqQsSGY&+EA0SA2T5_vN(zaG=RZ9JgOUGU)k#^~f>?|F~$nvvRsm5$V!UGx& zwUgVSf=EL9B&m(=M>B60us6WAJRw5w|K59ZO3c*6O#ODEkFf2;DGw8Tsxx79!4h!D z{}#nNLGK+ayuK5KFAqWMlHRG8ZEitf0v`imzItx7zzHc|L}en=D!r?pq|nCKops07 zB#f8y$cSxL?}Rn+1vVhL6VH9=ye=ztxZf+QbXfUmjqyKJ70=u;3h0X$#bh@`zjWRg za#h~5W$fC%s9k%J^Git~v$4t9&61n3EyX*=Cd_$FSf9ig&7choOVj$HBYL)9sHg_h zJBvpxFn&PMNSqf1{G6GCD8D9)``w*^yRrxr_U&P)}uy*etY-wIsv*(b4 z=13&LsT-E01@nvtngKV4o=>-EDe|$E4u;971 z-aHYzG%nOnTqnShOH0IX@)tC)CvGsewiiKJDcniidNXe#?*C$Sr}_2jiu~zEm*CEG zE^lh29zJ}y&T$SiRVnDic`e0!N~Hs^{D_W~I-6g^gv#eMxMzMrE_Z*p5UUiZL+8$R|>eP%6y*j~D|=WG8q+mwhJ zGsL%N6V#tf_gQ^=8NNa+U+@)36ee<*_J1StY7t+3uKPvjUAwYEz?Tv;lGqM?C5iM~ zMEqJ+Lw*iHwLx^umY*;bK=68BmOWuSS0-_(-D8X^RW5+{9i}xs?=vr3e%{IrNLVgA z3omS2-rHV(I@d0TzK+w%tHj{i78}#88|4>S4aA=l+-G=JrcI+=Eiv`x3<&1~-AN;WRaYtC)6X_suYpE0Da|5ZbiUk8#tgW7>D zVRC<;_e0><^KZYvRwD??bwnKfR%=Eg#W2~_z|`NX>KbCV$GXc;-8Ym$bq2ficQ`=B zi7QsKDB@n5_MnZQ+Dih3+$g-Um6;LU#q)1z!%J1TIh!hO?_bAeMWH&igdsp-jFX zi7xGkaQN_HVw%fu;zbGekEUbnQ*{IU1a!>U!=gxO4(es^-4vUv~FeE*3>0Gn{zXh~{mzQz{k$6$A zcx9)Xh_1{w*%66p5$5AtK^^YXY>k>HwikEHGCqE)Q|MUQkszcRJvcxSqoP}2=rC6y zU)jDORb&AjVLB`DF)~JS3zHaB$LC^4>_&K=O(JgLcEb|jPi}1_c4S(;^0KUUC(7x)yc=WT`61tTAGO`U z7_4*JO!Q_^PKNib17mKkGSxEl2k)ZY?)-2zwDsw(P%*2qd?%66O)|^MRLB`UQL_#=3Ae@cB*@`rOX8{GR|{S70uk4gX?-TeO@3`8ZCAT( z_8DF)Fkl>kvqEIfB~(4gH&0p1%=39W;nkk&xYy)#TM&ErRtr@+jEv+;@ETjC0e3pu zz>Ej`JrjL5RAqM`Z*V55XQ;O4mQS+l1$nC7X{yT*=tQcvLn6;`7`cbi zcz3+SFrjw6YQ^+k6ZdCnQyu#U-$350ZAr-7ba1(JYNZFN-P142gcppA@WPqQWF|uA z@?X3oI(K=rS>XR}URJ^vOjcvs$myl82-F^a@Y>sFj2T0sM)!{Qp!lqqt$dBV&N?@Q zJd`0>7I)}0T2Lsng=%&o&yU%hsV_}r>&K|m)`)S-YwbX%h0d6^wk*I= zf8jzZYO^J*wX=L;ev(msM$~%Z3KbpuCr`BJC2XJX<|k(NjpRVoL}iR=(}%&^uSUu_ zo^%}_PL6#xiPm!{*->RNtjDLWYiLB6E)Ou>%J+Dcquqa{e9Gf_SM5%b-r-#TG^5t}G`}g`5;seGnYHlL z=2NiwME9Bd`x}j6b6_q{`)D6_ypL!oRo-E2`D%OiKX2IJFGiUmnw^!(+0}i|K}y2I`AZ+xczks&bs14?{QC>Ho8W zOG|ef7Jd}PNq!c0aI|N0s}&9;h%eS+FG8Me?TkYZn$~6^V z>tv){qAdQ7{ri$(BsN0YcR9GkZtC*g06NS%O=PuK9cQ)PhAHJu3d2igKi`Gl{(JdH zc7FSIcVe{XdM!*+3Qm#oH9_Bi?!%${3D=uN^~)JP%M93aAvz8@5Qs`!Z)4$2)mTD(Ak zFShJAQ&3kAng9w2TZ_gI!ET@Wh?&CGSJVGznQre%q5HVV4|;)+mH(qhE-tivRX+YT zJAFKkjkGv0`D>2dG8ihk4&9=Xp=yCA>s$Mwyk9q2#4Z_J;)9>}gDR;OCnJjbUfXF5 zMotTh)vZBxLc5sV*Z0-8R-H2VyZ5}8nKE;}j)=H@m9l$Pv%659mi*%FDC4hBUXtZI ztxr^<1z^_$ZELh`>rg|}XZ~Ipw)+U4p7c!N23Gu-J-|}@T4{EX-qTYN4n$JD$xY0*Xm~uz;CW3cJX=Nie#y+ zi%MX7y`l?+DCQoY^AC4g{Rqh!>cj8<9*3_+#u)hA=QlXK66=C+*3Lb{bW3k2N1H|O zhWY-M25J4o94~weXe?7b7%zyoih1NBuV-y~4`2BNLkH!MRa_0RfvRB_)m39JT2c1V z4t7cDXr9R-kVO`mwTNCIskAc`dA&cas7SFnm`MPP5wLJ_%;&wjVQzdC`~?heVcu&l z=sIBF{?BEB_{nA@>l2q-GD7*<@kxX&fj2P0{E05Dan;Y-gt{Lltp}19o@?JNTQ$j__!TIDJ>bajq+A z(R0#exE&nbV2hZj9hn^n1mc}~G`tYMsaR?ExI=7zx8uyAU!xN=Ao zO*%2aO5zTkBKdbv2;}_3f05x$=7a!Ws-HC9P@!Zu!KB|h-*^0oPgrY@R~-1oojT4` z$RP`LJ(!->CkiA#6kO`CQ>OaB_Y4G*Bu>2_8ceof2h1`A5*c97ePy+0o_cuU&)Z5h zEgvmj$YQ*a&qLS!I7HqC%M|;G`v?AL+9n78ZrX>zlhOI#>zmI^BhQ2T!-y*y;Y4n5 z`S}Mpt$k-(;!+~v{n4X@TM`v<+I0jiR=gl-DB3gR(zzkT^d7PeIXuo+fOyzVd{4&@ z9y;6tp@`EO>uy_vyDTIU@W4~Xax6uVh9hV%yTmsQ&kG~+go0%cUJy0Tp$?uj1u~IM zR?sKF=WtQr7#EDqbCMK^XHTH z6THL|2)N+n^U*aA!ixXDW&7v*Z*CUd_%Kh`XwDyAu;qae*`{!%`b-%pSd6UJqG;O2gg-tHF`NbKlC!Zj;Oj z(B#{;?N>j({*u0PO{|p9YN+iBz&3!-rSUB$-72Q~7(wz1dg^-M&!X0=(b2f|YSp29 zZa`u90YQ43kGzcm zAs+(*F7%C5?DfUk6m-Pv@_~q}dSGCnbz_Fp-&E2s3{5fx;Bz)k#42=PXoyPgCc9|P zoidwoeikv?PgePCi<7dE-6Nlv>Jg8gLSs+fJE#jgNQVCLHpmnxQ#p2ukegyRJ|vya z@pombFE7biIk*5{uOpe#ik$Q^gE|n1gFw2tVU5ME>VAS3a5uhRv?=S{oll(l1dis* z>KR=dc>-^-PEbgal%&dly39&25(Etj<_juJG9G#bwq0M{Zy7h|Ok1l1y?}7=SSEW~ z`@wupL5RxZMTSs;de8l0yG5!ylzjk?c`4huC&%BM?H+E39P;Fb&Op4l!>3?2DcOr9 zf&QBXJ=x_h8$K;;@KZu>W`|FaOhvuvX3A1!j6rxe0=oz;f38x!e*D8)l*kTPezlT zq@A=fKD|7|zHgxSbSYTZ%`bjs-krdsTV_o%TJ0KIg5+Qp5~moHuY)W5RD!Cg=vY5W zp=;EKa;tkv39O((t82;C8lk zBMxuK5q64!Tj~yCy|~qpLUqDHIU2PqMz|t(INM@43H-O${nl^&HQAo52s+E>lCL0H z^u&a7A`xC*y%WQmv#M=!K8KI?)}+o_XZY^!fw<4P$s36A?(f2?Cw%6*rVC~89q*?% zm-h~8cJ`M9U2yqzga^QZNHvU?EeD>nDq&|RvDy~tidC4~B!fJ8=e|9!q%n9NonPQ` zt>FJ-?aKq9T-*Ogg_HH1lSq>5o4VpS;xK&#`3!#Bsy>B?R(yze_DB-`@XOHT0Wo8bxm}ES=D2s(q!y(mR>#? zTJ_@#_?wdZ8?E7^j%M}ITm=<~g3gA7?9vu8sDi!f|KK(mbX24`t$4Ba`Uw{=bZ)yn zD#PP8%`s19T^RttiG4TgT_n@on^q1lD#1c_ep=Mj!h+l;v@dS7BVS6q!YsYmx?J_* z3Q^pF+&ofhK%jm&krW_ZW-y2vLXjm=9TcLAJE7m*q5iP4i9>cSg2nAOcEbCNj`k!F zIgfCQ4kbq+ikJSp0@KU4Q6mhK#Fy^Au48AZ7Z2f&d3{*a!(Fv{+i~DX{x~skLydlf z`)hddy73;a${V&5c1&%H7*oFB8Vh zB~}$AHOdgMGS`DQ9BJ#j@y9+E&zW>0G4J)#11bd9D91?fla^)>VRU8fMjd%OOAQ+D z7NZIH)Os?=u9!x(c~VBHEj<@|6C)5in+G{Kj;P3RoYBCsCWPtUleLGzCKI+JaLSD# z=(70jl-?SR9Z4QV^L-IsX50H&n%53O1(({B#bwzd?90;0_K+J17vJyNQ!7hLdx;w{ zn5VR2*_H)go?Rk&eR>)2!7eqqCu5YMq+5muHEnGuFvJfdxsbM(_Pl=`8^DQFN;1&o z=JBEJLQz@i+KZR!up(y7I=1dFMl16D{cB5KBNq#uXS5{jhwr2NU&{71ycx%H$cD_; zYI|D0lHuhxSti=vkB~$f82 z=PFe%c*z8EEgXb#mK^4TsV>rj41(oRF~9(Iy;Mey-@Xf^LNP(W6VuYFM!{3aps?a( zx=nJTNW&Xjo;c8G(szv&QI>meO(htREx7s24rnlDIqP)lhoQ#1FP4IjvF;0*{a`TE z!$QB@ZSa0++OYtj<Gc)|2ocY~>W=Qo6_Df}% z(%$mT{JZ}M8I3deP#1;uYM(&a;B5kB796b>0XTGwZ*)lWD*hosU-o2+GTv(;t~+pf z(mJYKOF46{{Pi{_QMN6f6n+r}3wOq%C7x=Ts*v7;~mtPuF#WxjGbX-5lgHhm? zEg3<;V;MeT_sGt}TK6P&*}a!+B;@L%P+lEYWy~Ts&xOFl*8JU3`PFdn{OKEb(aoS- zEK;)NW8-0RS1u0M^I&^VM#)g7ajllq*b=L!{+W~xRWQ3;)9-`B$^@|s;kb}7I$I^! z=CggUqw!pd6;7tP10P0BIJ>9`J`vpG+(3yA{XoQNhsunbyGt?Se%et>De^a^rL&?d z6akDcfRP1J{EvnK(}023S-74%JKQ_IU_#> z#MR4ECc(U=H`J2TlDTs4*UI!0sFXh zF5Cd0`4+UKCSy?3@kvIrs)Xyx5GlbrSr$iJ5m7HSs zQ)qIBzI(q+QHL<|CwxOY$dWJll{nw&KOpBrE9#p4Tk7_i*9QE;DB@_*$v=4xdC@WN zq??&gb%L^r-|yEsHmUNHpB~>AH#m1}->y3c)ayUT6Y`o`)4R=EilS*!Mct69%EviEHQ?e5hZ0cF@Q->!(!rvi_HZ zg(f^(!xGppyQEilFsVBE&mfa}8n9~y|Hi_C%Zo>3kcpIUo8pzpGt}=DJqwo&Lvji3 zpaul32h#dAKdOIEfBW2Q``Ax(75U(^>sxc3AEfk0%OagTT&5ifUHX*vOb30dw%eUK z*liinmWuR^lD`pDRmjM=toJFD1aev9A7tT#vPSV0qKxw;LGIh+=UViiRb*{r$L>(@q0n0NFnmjY2CE@s|z~fS|1Q-kD!|Q=i!FDW; zE+b&xjw!_ejuT4{P@P#u3WQ71G2tIL7xc|7c^7c?LlMeR$yr?h7b8ow)z47&t8uP2 ziE>JLaz=sN$P3xBS= zcia^uwtejG;WQnrtEr$zQGAkW^Fgb{lj=8tYnxxtAVf*K2=VPDyJ_cIhNTzJi?ygQ zW`*hI!%}TjI1}-WpUg**PqQAS=996{!G10v)6o`xENVdBm0NXcaR&T?c0-zqeo@_l$Qkpi1#YS?7YVEnY$=Ve zpDjPqpfrvk3uj$u-*=#hsIjFkHx%s+Zfw!?B>!1!joc>u#}BWw&9GKXFGZhZ|CECN zU~M>x>K(F-OsSXM=RRcXxco63J@Gm~`_wMoq(FI|U>Px8LMKQcf8zngf~V&gfMUF? z0h-3bRJW(QU2Hvr9SmHvtmMCFZ;)p0V&k^Ajz7DY?`#vPjga2Q^m%5wzGw#22=K*| z^_@@+#>e6OtZ)2eMSj?UhHVzE9WM>8aQjsRUR6pc02Kp6Lgw9>)N9W92T0B_ARiB7 zEbe}%PjOf+u@(x}F8(E)AdD;=Hxt%k?JOxsn!S`xh$rlC)>kS9Q6DR9u@eS^Lz(6k zmZ71&pQnV2h6|JeqtC%jDo0yw<*w`r2;`cP#CE5)6!IiE~|;$O>`Ms(iQcj0q9Y+i8*K8oc{{< zm+}S*kx-2Xmr-n6n7U}+!Gz*h_YQpb&+GNcm6u?DC&G)n z*C-bL3p6d1nAKOR6x&p^8Pcso9WdC!woR{8u@y@Jz=-gs%CWbX^IO;h=1~M43iw)m z^1F4&2CPsYN%AjJCPxBP!QQFm~Apd1W*J@8or z3!YyAbx!{G)|I}r%6&rL;Bj!%Mk=Cd)={BvR$|$QxVOz}h@m8xTjroUb$M)ZO1QYX z+%M)&xv~d0=G8QG`SAhL2SAl@aelC0|Fa4LCzxqm&)f_ELFvgJ713 zRiJ?{8kEPvx?21y(x`Jq3k%wy{s}<$cKXxW;wJjECu`DI_D+mAxQ9GzTez__bjl3E z-k1Wc0d=ZN9h^Y!dqttv=8}*W>2%C{4+cuRT`!`NNuPWCIE<=4a_WLGE^al@uuR%P zNe)zvxhP*gaHBJTTguC*+u%Vu^adURz$U9sdAJ8RgA994cI6XeKBb6iH1PhH$&RU{ z&uOy7f@QuMf4aE%y3RKdFsO@3*VUDo=qNy8xs$F7Q9KoJGB>MwB$srczYe$0d(MGcx6ukKtT zh*@j#HMbUN?PzX4qAbI2QWts3;5@FFRR(-o(unLHIC_YzvBM;x;S<7D7p+mJ|7faT z-+v!A(>8aX^z8ZZvc5TS4ZpYUZq%qs+a1vEr&fL4eUO~dQ}abV^xb-0k3VXr!7e*X zb%^DPN4hZFmY!+mLKGcU4E=aMfEijDpN>0+2bPP`r{>e_aQ*?lU&(t^O%{um>Rf1~ zmoNd`+2ScZN>Tn)z}oA#%?g($zd$PGBgwN}dro)SnPn&s9)4h_j&Qsm`)I#5W2Gc- zt!^~G9;`Y1owEx-e2ulCXH-6bys}?$^Xe5%nBQCCyf@W-aZc6BA|8rqb4}SoV^z=f z>Bm)MQRf0WtThNC(D(f@@jDKd+H)={$YppgxO8Ov>4IGMQPo6RlfZ^;sqFV>G{McG z&mSwI_u@G~){mM=@iss)kye)I^KX)9Z12a87kvuUSn&a=P;Y_W*dfZ^k|Dsn2S!@% zg?>DS7Zi*DHN30^4n6I69I=szqk5K(8wBz&yCtM0jSW>jcki$3goFn|BgL|N-jZ+V zs?c+z10ztTSM)8lw6t(FnGcl&L|#|EJ-EwHDYmi<`epUc$9~^MYDs$f80>|r7};Ex zTYt!+Q#qHg^u|KZy{EP-Z^A$jT-O-XvQdT(kKE{zWh+K{Pr8q&QwX~k^4;DTnpA2Z zyN9g_jNJN4W}!wtpF*TRNc}vyRLsk1(Q?3#Z_=vr%>hPVfyisd6D`H_r-{7@Z^#E9 zoY{u~|1el1;A#+ZYdubItwtDNyU0hWgmVn;JJYrsa-SrVNZ8R}mQr)I%Y!QsS? zmaE7xGZYu-thg<-a+KQOc%*Te%fG=1gCe>dmRt=~KmF}_AYFXGk=+;|HvCAQ%}Ly_ z`;oUCyYkV@yp>|=SYeH#H{r`)2lokpa0~hC_-t5eQrALXJHpHCpy@AjK$*xw*V5GF z7mvfq0l(LN!#;zh1euY#eZ)#%dSogtPzC15` z`1v4T=$F+$hkRCAz`{B@HLv7qbmwSAHmQn}Wx7R>(*qMXnnwzUXiJgqWvYLWCx|X9 zauQCH5&%5oes~u8D`$M*hGdM_1nw}4zfvj;z9npj`tDD)Jb zYH*drbORTN58Us!??~277Y94v3RtxaK zj&Q9V^Oo~`_-3NQWbHhlgHT{|+BhFgg}QiQ#*#mev}MS#U;VslAYgYA-g$1b!mRI` zY285pI&Ts_m~i~l!ueo_{$_B`VUgx*KV11)W~GVwAezRNQxs$XCM^H!j{+cJ?H95l z)9cn=60wVVhvTmFP ze^vMu*oA%H`qi^E;;n0ojy!1s%3>&S{=(<~?`s5kX51HM(aQdxF2P^hj(_@bUl9k3 z)GeHVe{ph}hQG@1-*9^Bk40a=9*Y0B3k3nGay0)x?4knEv7VX#Py0WL*>lP?Ucfx! zkQpL5q#|O8j)n7cXRa)`6>HVT|8(uo_`RABX~=L1vXjYFwm*YYRv*!np*w9Ws=9vhawqUC zTlrJ+mJX~T+W+H0^a;KUO~XedOoVE2O1yrf{dq)L3joCrNi|P_&O_Ymf4KWOG93qJ zuU)TfBu)CX^(XOhqUEGKdX2QXG|r$A60@TGAo>G&7O7ZqT6`%4$Vk$$TQ@fY z^{1~X$^XThDnHJAzYWo7fyB%Qor2tp68y{uZAU?NW0=c>_}+(*2RU$KBbt4i`~0KZ zSE#+EKrQTIt3RdP@8Xw+y31J-eb7__a{mANbsI2GG4YpjWLpo``jU-?vpx{dnd#r8 z%SifDtL}d??kB*w_a45S+f;%(w~!a!Lul zg5QmqxZ8v=SIo}MXw(1y@Uy2K*n3R;L!MbM8n(aYZJp7HNX>tJ!8q;dF}aJZGwf>A zU7{Y+@(nhj&D+NB2iI2%7cZN=WnG!OYCqg^R6`e;wohvIycIPm#yvhlt-3=;!x zVGMA!S~+6_PpYf$PgX=AssI&g2#}pgplbZnRxzc+jmm8^+EF9o>gZi)HCui|n`B+X z`LExN2d;yh$;QloxRBib`n|UJ$!ocm${>9FT(KfFgw_5uu^#W0L}h zzF-Mk(|d-hx2I>1@`AjV97xdB+FCn*DPS1-jryfxTEo)F1to&>76`$g>-1|gtPOsPF=!~(&eCGY`8i#rA1_SU zq(B(OsY~uRdr}_J=j<1+P_bqk34s0a){bhG;&1jq_Kkrae}OL;uxD$@gvGh2D6BZ` z$%03#_yrV|s+ur1E5EinVNT7R-cmXLWAvCeK4CTf8ysbooZ2x)m{&?k&AWL&_m5|G zaDEt2P$f;Xy&sU?a`^dL&sYewQMZ=P0Ug1A*wVMV`wf$siGnHvep4{^gs0wk=ay(}qoC>$qU{+$dYUu!n1{q51`*t46E zrGLo$%9}*;Zru}T*Ag_NpdZnajX9w($t-Nn#86UJ!8FBwriPjDAJeL8XI=u!UOsBQ zMW}9l4sEWJ|JN)904M1TC5mCqK=vQ=2xx-TS$K-#%)Ub`oS85D0g?bA<@$Rb2~o6! zHglN)@cbb>b?%dVxCrtBVd4GV?Y=@IE0;6;Wt36-0TtmJwPFMT5XjD}k@;@7N+Op|x!nITGp1JSg=uN?#K6WE-4Vh6o z#(VwG{zgFz zQcsJC)f|a&q61hWue|I8m=jQR;&YiZMOL1{*Jy= z>wqROfWs2OfGqK~vrntT)Cv|5S4!kcQ}v^gQ*yK4zbgOq>eW%*_P3@lG)<^?e$hn4 zfS$xi3ELdX4MB*!wqoqiVP(zn_R#jSsUmR zCb}xJsnM|Z@+pw}U$lxK-1~ass}OB!xpvfjE@HFi5OxgJCB57BHqfbg9()~rOlyO< zm<*I%+Q(*+eIq5)8feg_6x){%i=Uc?I5R-Dvj&{7Xj7UW5a#GbkXCfvmU{^|Lap+I z;_=PfCUqS;cfq%C813JKGELvz8lL`eE&F*xN`Xi+&3qxWZK(6`a?u zO1#m2`A(jurAnDbTypC4CWMUj{8w`&hYPe{69kDoJ#AMCy1<8UkNyit4e%NTXBtgL ztmGj|3(z^Vcb_0RPF)TcF?t60GCEpK!C%R*p`dL;Lb1|iB4@?`iMYetAWGi#a{$&; zRg#?A8GIy$@d2*jOkw(5PgC&(nU;+DthZfLnmRnyXV++Y;XlKUpb$fP(O1nLAynn` z)MA!LcVB4d(V$CmiY~~i)_yt+a=0TPl$LEfz6zBx@ocfr53R*bmqk5Q|Iim5m()A7 ze*=wD03VG?+XW(h=_$u-DeQn!<~l9;pZ4mh2+X!KO#@wRVL=vhK=$F;`o@fq zV<*^1W+cD+G{h`A>VpJo(}>L6cpREc!!HPvU7Ft6iZR0K zfUdOX;~>W!ONv4LBA~CXdIaQ{3=awm>NH^L&h8UtFbD9PiCFu#zd^U}R&n5lC*_mU zeqO4QRO3i?FLohRP3Ft@0(o>+)eyER^RwVaFiSOQaEd*ZXJ0eg-)3l4eq-zY#}_k} zjErzkHW5hG5aZP-Y}S3<58XX`tV5kK&zZrb^N3Djz<%ld?+T(caKGh^A{+s62!spn zdm@SXvA43$jCYmkCV4b-zKwC8khdz{g{gMkOnW)4j;7eu(RBQ(=#djEnW@2ukzJWgah;htjR6!VddV(lf>gBP0)#-N zT4z`Yy=@sUq{Thgfm1lT}y1OkSIAmJ}y9;W)(*XbvTOW6# zv7)l?B9~V{cW9iM(e&q_t@izWMj`TdlM_~z&u_f(h+dY^yD`kj=E1!Q-q`vS0Byz3 z&n`SS$OC}L*|Sf#I`{8qNxw_@ff`B?)qhY`XPBSOBWjq#3_P}tDsj`=#8}g;guAe8nZ_HixcAg(b8+#<3^zxj~D4Jwx&{{i?0z`F)aMFhyYc84ep`7ToK? zUh^nOF8y}P)0@QJyI18d-+V2671+u(So5v)`VBCB^Mw~M0o`O?@3dr24eUW~#Rrqx1m4AkmCqDwq_sy zK**H8yEXagJ_h7Fsd?R#y+sW^z$~-3S>4;VN@#6;h;vlfgPpt2;xi`tw8C4DdvA@2 z-{&w?9}3VhWA#GEbPq~J>m3mtN_u+hh8DPM-^n7Il+gL35DM?2fw!7@VI<;EYq!;3 ze!q}XJ^)|rer0BOvwdGHTCSH=KqhT~*jtR{S=GJj zUobt%q3D3_2Pnn(0w>eG*vC!ZtAheI0Ur^1mC8hhoBcYz5?sKASUra&Pv1`Np9N+gQr-Bbhq$Jo= z7s38v1e>m9TFCt9{`FsiD?OFc8o1>mmQAiquahy@6gwb{QI<;(Sg7a`p{|+x^Zoz@Yb0z=8Jm|kwG@B zHH*trXydVb@+@u2=u_cD&>KAf-wq#N14`IDGW}RQzvjM8N@5+kml6ddJ~o}uc`r$A z_`_i5kFA%Va^{YMz$1tO>0Xe~1Gy=335;l{t}IZa53PEsaOhBZVe0dLcrZkWRb1w2 zY&!9=wIqc_sQ1ULr#BM+SALHnWy%8N!3VEB!v6Xo8nE|Y-Ab(2SM1y9RIpdSl;Oa@ z3tjFq3A04S9>MG%bKGf>Q!Vy|3Vo^3`;S&2ePfe=h$IJetDXHosD+`MpS>);qJ@SE zDDE9!Gj6}|+ZV0slXL#WTQxsOZg6#x{=vN@oEfqgcvKN_=O8I}asTRqT92(oaGwun zzhab_r&UjrX9opzPZv}*I8zvY>@KJWI4M0nEh9cNb#J2V(AKAjH?0;3>R=GT zc}V3q-`74CpO{l*Hvif{r4j<4ff9sczEK-dlS(2kjunvi&rc-9^pX)p!JwDpAiid= zO*SLO*w@EP5u$)=(Aa_|6z(JB6u{84(ww>8$f1nHAMJN3wp4X(XuKNF-`vGkWdj_&4;r`WCNL zjCt_F%&D^`BG()9uFsw+zP~w|9|)hTkSRY8R3=Lk1&WM+Q>_SIc2Y`@5QyXTpKfTB zIZf0d3zp2V$*TbA+quj?`Fj}d zFstL|NES(*7+SlZHyFcI0b>khnvPRV?U%tl0nul!0eJ75lHz+g+v7+)54zw2uVCbF zH58$ss3Y1&fS|<8Xa;N41o`O2EJ&Q+bTM*Zg+?{@`EylCpiclnCaK6$4{Ew4m_a?Q zJ1xx)XfnRNTuc7^#+%?t{)s#o2gVdIbIKIPl4Yv7H#;t~a2?wbq)k^yZK8pAtj%A; zsGEm=&~?f0?=cAoDcvnsSfRwdJF)^U9F81cG;VcVIR;EwI8R4?ks5p}ZeZ|{cW@e1 z)vIc6K;)5U<|D6Pe;7)?-!+fS_I`8uIFi-kGBh2IM$Kf^2g=Mkj*oS0%dk9c+3^+) z^mbd{or&kPj${nnMA8R9o54%M*;7AuhnMRNCKB@-CR(&wXNH~A{aI5(LFQA{aZ1$i zywOcj=PCIuTb&9ftL%^`#kkL_0WTTx{9a1U-@$aPJpp6sV6KQY!)?0*U;Ie57VoaU zfM9=0dQMc?g98A9qW`hoC8wWB6o}?)56JyDW z2o`sIv-zbOiP+9xhuhkw<=Vca?UJzVccRpYwE3^c{eQTw`u#6VWX%e)m2D$Vgy2C*9???8ZCL%#50>jU;U5H03nGDsM{K=# z@(AWpV@solOxG5b0(%E~r(q_0ww`dRWQG#ZTTI%sP$G$ZQyle_(J-SduJy?K4{myN zGH-U_E@rT_2{WdHB>=xwSku&OP#dN~IU^XJt6~2Av00tiYl%%t;IR(U?YxYk zg5y81@-dNd#{n*8P{pv4O@ z2@|4tM=9T^`mE~M0&n6H=Apg8dLge+_r2Pouf|~d$yE%wRUKTtdTNw>e(dV19p;Zv_)A=QX;q+&ffeqZk=7=5v6@e-skdWVP}Tq=r#O+hC4{R>3 z-bXViCs2je32aU}LPb6_9yJXj5KdelVNDNumaT}R8voF0-o+I-B@VlxF9V<3wG@4j z@yqpk2MwMJ-*Pn9cvaa|o**5>9Ho5jlr5#iqm9BHNCI)4>m14Vb#OMiU_wko#%pyk zVzCxB8*RM_D1V}$+rJHtaf;40c&Rmd`%!Pi zogdlB&fOmAoQ_c^iP!nfEMHADWE#werd(!4&kAX9@#IYwj0EO7hovx6^qq={ME!Og zKdwfNtXqSt32_td(nbRo&?PJd2=JV8_L)8kz&BS%H*$Gefb^TUtb!%!eV7-d5XGp& zSgu0a840_6UvWtRqgby~+~)I=KCgiC4W6G+heiBXA7q`dZ5-5~p10!b&g-^FD)yyC znWnbnzQyXK$z1QzMHgrjmhsud-dDMJoox4Hhx|J&nUz?brcuo}aOOkWPBb#m-Jz?r9G}vBk1t^3fVbIdB50w zS|BvrMct87|IhZ_r~yPEO{XxodvwCD%F44_K0V|o^ueqajms9A%avSES-J2GkB4&TaJQl>4E`;-4>fY zybITSwXxe7k#syO%OE<7SlEVj|1Vc--mkyrq0i9F^%B5K!Q%hN)Enkz7Hu>Q{Zb6y)mZSIg{+U(0O% za4-tMMc>@t)oA68q~ws6#usU|NnU6G6V-OFk=;~^|?2fR%< zNks9&<-LR4zO%c(c4-(U!S+SXulD|h%N=R^TCQH=MM|;nD1JJNWRQaZX`e&>#HB5< zG#+$yYS}G~#|8Gzt0wh=j?;T=x3`wcx2_C8DilNa7;S{qK65Fc%}UkkI&n44l{AAo<`` z=T*W_Ax4Tg|KnzyVIm#Nr(_>Q+;dk-3h&54&_JQ7MVsPg4vjr4qj7t zNB@uJ5jJ;JG;^9%1^VH!0dbTB{0Det(Y6ez+0LO8sbc7ab_9%<2zlgkgjj?{y>!pRRv=Rc$wMBH@_P3E!_xG~UKv39%474*<166T_-lX@_Z3>u?56EwB z>Q}ycMyt?SJGXJf)-M+f-(9>MHg1inRuvvHa{FGYfAdGsR`L zYx1~T(uh0IW$3BS#TDy3aT!DXhEaL8nc%HH;3s&IP~A~6DtzGMF0H@D1;<#|_+F^J z4;bB3nn)1{3|7wC9E4b+Ndj^gnP==7jY zC*r#edcm^-(;w?W3&vCc=agFYEtao+Kn%5>W^2;=*j*N1nal&hWHit3RK1SRBR}^& z%X)rIGBBO8|Ipv=2Z6NoMSW))o^AC?o?zv&+cJe#N7_4cbeE7SB(Y&An0m#rgRsP` zLX(CEjr6R&pR4*k!;2)zr_a#ZjV^0Eqe-3CDk8a2G@L$vz6IE&{6jH<}4{Q8cLg)ysN&skomaKV|7 zqg8?;*CXhYj9J2t3Xa~ns!k#FK&oNF!%i?T?CjauetowPXrNP$W#|4@4J6P9tT*2o z44@$F6qA}Lq?tqoYK}R4j9X}!o(vD$gC4vB|EB&P(9_mplcmsyKDzj^{>3$R+pm3i zs<+uqBWS*W6Wl2uF_(d-#Kzezx%V8))^ z&haNe?}@K(Awn=u8)G2I8h2@VURHnf5KZp|{q}{u6x^(z|F#S{npI8c-yfVPfPUPJ z-CM~0M#msA;4v;q%sDV<3yd(&)WE52ynPb^e#9Ssy^d4ZML8QH)}W^wy#O;2mwStM zpbkCn7&Pl7&^@@nnQ?rv)lPv{spc7%8T8P&SH}!Vj3Yz?!!7=iEwDph8%Qaxv z4m?#Ad8!fD^Y+{m7vPKK?-c)3`JgCzrxK9;Y*gBtZ?Cr!yTwzeW5P-5ulx(wS;Dpp zTg-lQB_=uJ!SFk}&F9#LdD$wXzZW4i3IN((Jy>5>edS(MEw$|&BqiY6XerogruW(1 zIS`RO;PUMiGk&`745|B@Bm6A-Cm3eNyg4+UGI6n}?1Af0|CM|Wk8G74hW_b- zY>c!we7CLk12pKsidOFWeh$-L$*##IEvenPL+%A5_d-DT=p&xxiMYk-DdEYaTw*A^ z82K2Cyxzh@ygQNk*VZkWCUi(kL=heV(5)w>b@|=Q3#e2NkqmCes#jJ}HCzZG4C%W7 zP6ggqxVPokCErbmvN_nqqSrdX5)ZC(uAl04Eg*oJ8B%?KphZF$iB&PZn)m zyd4LcYnrj>>yA;N*Y@|Av(88Hp#!p;Z6V(Hgx&NNQ;CM(BKGSD?&_a0ch%%$DEVW4 zBHQ~GM000C==;ar9zbj-PaFdS?z&FaLlZ5|zR(~HrrwB};j+XU;FX;yI95;2lKdnO z8LO`M2_wWOhZXM>l&Hx`E=f@aAjswEUw{aQv-v-UQI51+WYKRBcel0G*^zO->ypU^|sz^9I8q ziUZ8ya31Q5uq;rM1hW9aFz!mIZUEvYZvkDcb_*JDokZHtNii}9E{^7J>TX!O5#&-{0b?Y}$ zrMgAL0?i|%sXnUxDSNhAa?Ga572qcMS^(DqzXxiVF`Mj(XWcY0Gc%bKnI&yiq$#AQ)DCLpZgJ@P)(0@Dl+pJI*gM2+YXme>-(1{Fj3t>u zNEnjN%Bc5km%Sy;+$91G{p#7T9nI%5*zZL=BUE`ardJg$(Hntbh?7HR2q0=Kqw+bp zIvHmv)dct-tUB}7LZnQ9u{Dio4geU=c(IZ$GmmD}=h9jXNM|%X(V44bdiPx}_(^#-#+^&WLT%!Ba0GSW z2;?m^h$e%5{G>4U**EU^_WSIHwupYM{FUnP)clERi+Jn`kM#D+Y%e-zlI?;vLZ*j3 zHAYZ7K&+}+5fF9kg_el|$&by@*g7og8uLC8zT0D`i*gP-GK2X=bK?9de6X*SybR4E!Q&Q0i&m7`>K2@qyjWu~nRWjmF_1`9fRK?dwt4n765y-2!cv<^F3 zZKfM(In@{8{a?0mfzn&n7lXXSG5pvuI3wijd=hO z4{Fs)yn-*8jNhC7qM1I?*Z!?NWKO%r;1tR^tX4-)s16Ba-G1ec8k1N`I~`*UWSF5o zKx5kfJkx{2B9bc-_XlILv(I*Ef1BEz`3jMG%$3eMZ*Yg_iRHxJOMdl5pda({DexCP z+fzKv$V1C9 zJ&{$JoV&7IChNI0O}hDus4`=s)>G!d7v2NWseX+}XZP-$n?V|Wd0>7|s?SQD;OH?y z^pK5idi!AUOc7F7B_>dYIA^~wW~HkV?I(k_iqI(#I+M7}9D|o*y~sGJ&|}6}{)U=cp?1qv7d@7DCNnU|l#g3&L>jCgIEl~|4c8a#UN$UE--%~ueFQ&Z67f`jHdL|!v_ z-7|<3F*g?xA~i(Ri$?{eCwT_@Wy*lQW4y`$M^C}gVN ztNrE+aRHqQld@xif8AmJt%EoBcw1+II7+ENS2Lak)a}1DwS(@5otESi)Aof{do4MH zSYy2QCt>?{)rmKozY)l4Non`?Hk7{LP%qCDQ8(P=?pxkBXWK+==q+#`weMb$zcvq| z&iL{m+cWtBpaj?$xmFECyOlip(O)MJ^hU2zwN0f7kPFMfYZ(DJbdw7kNHz%33$}9Z zG#nF4DEX2paca+k@^bnh6c;Z=l{Xt)7I}4y(`03!)+Dm-xo-2-5tJnWuGV)$OX)hW z1Kw12{u%qi%9pui;jfE4Uo$Yi=sr;vYvw4W;rP%hqT`K;1NqY%3tK;QJ~`W?z@oiZ z^(=W|?&#B=z!QbsY>rqbnQqBWp}auFnm71g* z17G=RD=9%`U%bLWeQiE=qHNT;%p2=M?4mPYM`?g)3i`Wf3D+RI$&tY*L(G-5`g&3j zuFzAPErJ+%h&H>skaLt)?+9R}s!Sf$wO|}T4;BYB8wOlZAQ59yjv98UA4K5hA2yPE zh1!l2s2vRt#Xf=lS2WG=U$obwcBar?TyiJ`vjZvjg&9p6hf>uA3w*qF=1noTLMwN{ zpQ)j~_41~7PYVqDkZnyEeQ7C=h$fmRStyFf{@bb{5$l^A3Fx>(>9su@FHi$Q)F2u- z^_nrn@roEtoQJoaP`Q&MIBu!R@FkmzdTlfY5I12+1CsO+4p`kwymg8dtuD?}oVi0K zBFUEElbF{J9gHBUd85khn|UewcyjI(7^Qw!vxM+bJvX$|uQ`r8jyKj_4LbuUxRkSr0?HMEr(M9R zXG0~!v5EZ#Az9D;S0~?O@O#{`KH=arDk3N|G&0AerJHCIHkhMjsHSy>IsH(fYx#rc zCCPX0+`;CIp^xv?2TF`Qw86_?4qdRb-~uk01Wl^7X?KwAM*Zd8t(sJSKEO7ie-{V4 zI}*qKzK7fcCNEP6c!2BLGB)Oy>!VyJP{EZ1_6Ob+l}&KeHvy?4=O?i-* z{|WSqwB|W4^o>spm`2%B7#YE+S?4w*95=gl`n2oxTsP7=dk=T?GkBP{gioOSd~^*o zCc074cLmIWrFNCd>EauEe9Ld>vhUaS-hAP^_LdxlMsv(fzS{u)k5QCB%6-&La8HY7Ja@nbo95}eY)gM^hUn+jTyWbbq8XshdhYcK2c?rn`vP& z6Vh8YVsDanO-F2E!!}b_W3xOV2e{_Ib?KuW3k-46a1IV(7(b2$F{k;&G8n7ECy?P| zGFAy`!2LByy42~2OxtG*pbVeSZB zojIL1`2G6JE`diogxvI<+j9|5FX#C$O9@dlyTvAqCJd;v%wgrdqhTi@6rj*u65!mY z*08)Si>eEUn948}X7b=qdJ63pW`-YpB#1rhDfabnrIc_s9kSHzvfXl@D>QN)zrQA^ zNciNxzNYpG98+r$&SG)E#)+)e&jE^>`6d^=2m1 z2&7)R7LH?J{K)N=8)G?3{)GF0VpzqChPfF^2IZkiSx+SWjI>`FwKmTaDUr*~5%qa> zCR#?ITaDNsYMk}U>TD^x1)mL{2AbYi$Cqr0+L2Y2_YWD7CyWsn$AL;T@6w&zBRz`o z@y}P$jbl)!0)6IenOLfYUV9OueYxU0kvo>zHsL1a;FycDI~m08WliLDwR&NVVD=w> zk-q>y3)*`Nxl8#?iN(iG=pQ^xyITKT4^IXC4uG3XNMT0gAwqzzn~1e=??FP1kgjxt z4+UKS&*8jEAtcnr0s#q7D7~XbH))9Y9pZJ#9YK62wt@Ei%gscs ze$-l6m$G{yN2kHG;p;rN9e;n?)#8PwbI>md2PupB!Y+fI6?FGwbkPp)e|za zOr6*-yk4nS8;&t@CB!yFNm|bn4~w{W3jBkuaL%ZDX5O76f+DLZ#v1wv&V8;%nG~l4 z?$yi4=5e>Edn1(wz4H(n{>=>%=v?h!bOHN03B;RaP@Z>O(b4r@DP;b?jh zc?;cB`yEqxa#*djm&X;9BZ8#*yt{IARiG1kS|&YfH30n3ri4&KD?OXx#DK1l)V8)q zPvJWh&aS5E^1O$RU91G%R0l2c3QRBDGM<={1jEu4R#9CX@Z?{z^s8#RN4W#VR%=eM z9dZ{~LI6qR6r<7h;R2Ypc$Q|*0M~{?0WEC*;pQlSrq}Rn*H^iR91rtL4aJW{@80ky zY~j~y)1Lrn@Iu=-#5gTShY&}oTwkCR6Z2LnHjhR>sFm?3l09Ti#9O$&CBO9e)&wNQ z$r|!={D<2UpAI_%hAY!{nSa`xm_&-UPQTw9UU)lp^?k&esw?OpTkp+ZzsU!KTOsHh zXxc3t-*i}GW^M;NP``VdfvnxIze*jt%{3HJ%jwToF}(v?V^f!;+U~7R`P+^v`{!(- zE`AD>L6!@9Aj1Vxsmi{;A}&=2edm zmtyqYm(-S*DaAEW4n)q@BLtT*93dNgB!~&FePBXJudpS%(<~j=*C`ZFNopq>Foq5G zG@@(=QT?L?4(Eu#u?e3y7SrO-yoG8|=;B;u>4kx~(gH`iqG21{@&cJ?0LJ0^mD&yo zHIB=m>Z!gwZa;;3PoJ=(6ih(S?e|?AK?z;drzPR&mYKV&C8{kk0W>KY>Rc4q*c1TZ z84fiZYYYGq&)*2FT*IA7vJ?O5D*bL~4SKl8mp{3X236+WDlY4tx!T;>+J#a!y|`Mp z<+FKY|2$W`gjk7K%w3r!ZObp06dWHE5ghVvH}A+hfhlgd^#a{EvJ$q^>%Mb&g#U~W zzOfj<23>nd%8UB%876;@IEPwVV&z=vVoPwajc2!Iom5HxOerT{f+TU(ok zMPBkN>s}hNM#3Fhy{9GSntcN=qb9441fk9qfIMh!F@%_oW<~Tj;K7Hk>D=E4j8@ED zPX@=fSzWfkL5&N59(Y)3gIk&?_gkH*yy%~Pabk-nM2ADUE;ia?%6=O*(|qQ!A~lV& zUv%9oR~q6)(?ptWpHb5A&x{P!yd7ee-+u9hQ{390M7~7u-w*gL^|$pxi2az<(ox_I zIg!B$KsGmKyMEKEL4%omamO1A&90Ac5{S*M&z+?N3Ktk2Xm!;H-X5~Qc~*pNzsi^* z!dJd>&i>Mv9FL0Tjd!^E3|P4KJ!aDbS|*VdVH~l0=086`BvHv0`UeWJ$YTP9DaY}n z7)Ech4S|drun=6lb5o)yuv$=@JVh|-p4w^qQy|yqE}05`X?mV5$;^{jm}{Rm2Uc)0 zT72HTB$uVUEX?GqP$J)073OZUHIHvLjLZ;ihAM1^zg&Lb;i-=wj3Jhtj8j6x>eE??}afuTf$b)Ey7hLWdK zvl~|+-4ll^wtwwsRar$w)a^|RZ|B-6+!o(r4893hO&o$X5Aada5%L`jDeHJryRx4)`tZ zF#&W>*KJcTLS78$P@u`<8Q+|4qr8P4nm&JCql@=KouK~ZB;dW<;zn^OF zcOmpP%)Zi}t7y;Aaxsf~_wxTy_TGV1_wWC>mWJr=7DA{L*|N90gk)9r-ei~USd|+U zlD&!Sz4uJ^D(m2w$vig4v3;K}E0z2G`~3bo|DNabbv>`~xUTE*i2UB4e)t}j2j0_V z1FFKk3`nFddMQ|z5HteO4)OfJWy;Uy@%ig_ZYmFXWy3ytpMbcz|owg zFXL;mQ%MCO!*wgUO?L)3g4()RSyA4j^%m+aKPDcZ1RbrbU{l6Kl3?fTd$~6QW4<(f z6!s;<#<8uGO%L2-`%~K;P=&~>j1Q#cYHC)6+1VpV)Zim8;#Srxd=zw_k;V?Rihekw zq?B@-wHW2U-3&E`TfBXjrl~#2nW62YhZOXFV4av4;(nmv^GEibOiUJ{w?jy85=2ThOLZe zRo4;`g>^@7WM_?kM>r9|tJc-u|6GvHx~nl^vZ`dG7AtHx(ZMObVv>6_dqB1j;gYk8 zXjh0TyBT+ZOp8Nww_-%e)$S~w-FcDyW)~?= z5wqeeR)tzjDuISmSt8I5aXtw{zcO7eH@*!TDS42(mVU_833#%P%TS(IfJOxYcV5j# zS$pK-mWNVauA%|xt?|Y0rD@U1X(z5-aJSWX#Z0^6lFeInQrqO--I&JQukkxL?ryM> zRV$#GHeb-cfOi))sJML5)Gb@43gHm@!Ctz+!GwN6r?7f?wrf%?vQMiv8_R1P*ChG# zmP4VzD+K_>ERW5GZkSre5;pYzjALN+Ow0-NAnSHnm(?7%;G_%97lmH@=9o@W{%<&AuL9W{JK?J1ye9a&UAlMv^*@I<0E#Z8F;?!;l+L za(&c#Bx?iSL?3`Qe`j?+AEXXuWOsmXrwU6LI(_iBaVV5Jsjn^kS4p`iQ3^tur8RvZl{+PD(0W}8q}DWO2LCmru3eVkY zWt)ZR9Qh49q!}7+xuBWKP(0g()Vk=NOU({fhV6iNig0zA=^MS_V6;%%Px5OJ15Ya6 z$q{N+8=i1$wCI`xeEE1iI1X;V0A9@x%Fl)LFjgaW-xWH{0IJ(pNZH+Yli2DyZ9pVY zd5Lj(xf%B8!5~}I7y_xY(x5+J#iKFH(F04VFIIEozfclG@f+O;v?jgs_bp8IkQv*@nTv^jmN@_atP2(#pYwe+~Ku}UY3 zrr*i>XT?caLFF5BGGki_>WvwHWB&!^f{U^7_uc_R%BA5Iv(L_&gL;6F%OC+=pzvU~ z)DnWmw0!~OAgDKQ0(+io9r|@l7_OS>>6Mi9fj6H07w3|%)tCZkEBD~fzq8~Wo&`54 zu=eje7eg?4z#KTfI_p)kqoI&{wt-#>W z(IQBhxyLqIrbdEzX6Ce&Fn17lgo!t(rtG{z1$TjIO>HLKsXLQ47O59Ow-*d^oO>r& zHq$Y{Osoy^w0x3FX;*1McQH2R6kqj0#%9Nz*Ti)sV*|7CIP_Zw>27X+Hq+|2&^gXy z%V?-0wM~nGoD7H5{G8xmd)Hf`V(ZsVU$gd(=uD;2{k?bC2P>fpx;Mdn;IF*jwoG&y zq79V#HtUE0)YMhn&k9$eJgeGc)N7j77;jcSQ0(M1d|+pQ^n3UKT?byg!;;=lka*l? z|1E}+Dw2a?*!cr5{%f&)(*Z~+VO1!fDp1qI__Tb~8XjqZuWiN8E$1$vh_Pac;pAn- z$PJk7?zRird4(TbZZv$Z9l5Hnq+F)=mbQ0jhsk=iV7P6qiL2ew+*q{Y66Zl&{-v-2 z=8zY=?gLP)@NK_2y*`MX1eB-)<9=4hl)n&)1xWl;K++Ig!J3O2K$T{i!z0wY=0Ot# zGe5m(YFFV-y$8(V-E@K>je}82ZVPF}v)*J*>p&fMj9Y)ODM^sX zG!2!81qK0F3f`xupIWucaW0&U>SS^Za2nItk00J5mhBf63Z3-7;_J~xQX^*-XZt0} zY5T#3B{*d+*ioa9^+L}MsvVpa2AI=hMGZ$2<0YY;X&SdngWqyXiZj*e2YV7By-t;p zj!wg_28es-8u>LnYTj+Yka>Dvt3~a}T}5aviLq;X*0FP+feqf1zHB?OT_n-^Z!G9x zT~V7mL^f_|NAX`Z>@Ka_e_DuzWiAM?MIUdVlf{@BAe8Lv$`BVnC3q z`b}Hz=71g92X_K~Z)iekR<5?Fa3d)dVRgD%i|!_J8^|Rt0yUKSZ=Y(NQHo%s6sNY) zn3(NM>-bP5F?nr0m}@^sDWCN7h{}@6k2&m>zca8jaX|7sd5{?ZeW<%8kEVV4jWHwNa?QYU?_AN>m@~NATm6CQQgCI_3qJXF?(~|$yb9Xro#n^ z$Ez?ave4V$iS@QPD#?SB}~dGy)(^ckpM0YR8^#4* z`6Lq`=PUFAvxCD#Ask(2nrS#u=41kr8} z8r{3L{^wSo0EcJaK>!4}>~AQo@7T%tcX-J_#a!7hRViN>b9*zrFt+RwZzjeelcwHeYNao=7ZKXB4og@X2-u6 zSUm%2h~0veU_1u%2W=TX#;bK@e!_dp)tO!~L{6RY(I(lujGhuve8=v1gIY(#Y{ z{?m0=e|AxM;bcaOb{8U)O=V43@n|hv~d%%ME!?<1kOJgQh~wPZfhKO zmeQ#{yUk0ujNFzyklo3eeddOp^|=&?X6>i6ci6|1t&DBU17 zF}=v;zNR=>rV4dBY4W>{_>~ku0dm+XZO2?g8!T zO7*<7?ap>SH~2a>x>J;>bY-2GN#pyEI)`d#jey}*3|J!=5C&Q#o!PB?WSspLebYTl zB{QsvIg&$45rVrNRuEIZsZt`y7`F6G_#$7JkG1#`tMz|(;2V9pTLRba%KG@J9@|^QVDSrAu*NlZ-KSSRbihbbXdt&}BX!)vVTumrXMv(?Vbo6kQ^XGB1^?Z6R}U+Jq=!hA<^;}e5YU(4U-3nCsHB&z z2r=GiEsZp*Ia=z6FcnUP7&;?&-X~nUv7u&wHu@bPl9u`jn|9wxlDv46IrafZoaIit?%g}-@CW7mkd_tyF$+}>(!lsHmkbAn^g z5W~=$4Gk+V>OV{7*kQ@59;+qEYu5p^BX^0SUDQ<4ocOn<-PPAxRP1iTFFT-5?`d*KfB1M)0LM1RZyEHIH3@g zZhKgQ0PajCeL9Tscb7Jy*a~gL0UHv5#s_T*%gegj`S{nnM=HzBu_}tfRRgK|()x~; zxc+fqiMv!438DDzy=Zh`GurKI$n!HGwaAvo&uLjCJ-o38dY_+V zvgeDlf%bd0tk_Ji?$?aUz=5-DLU{{7G2*68c^$9g&z9QSdpd_RL$fun0k+B^b;uaF z%p|~tluaK^7VMwD@)cHs9@u#-5n(SuO)b=T>Jnd{<%J1AtBULu&To&-jCetfE;uTZ z#F3iag3kwZ)6{h{-wQf0zeMpZuP$i09L&M^{!0t7R&1&_p&`&=&4ZZDs$kj%7LH!? zJGI+*SpS4!-qUN^C<6{F%x19Oaha0n9Oc1Qyz@;M9g)!$zjZz&?cPeIm$ygM*H|T8bXNm z^7S;N9lkrLCZMU3COG&!a*){Br28vrn3bYe6avVz?XP}-bioi~XSKa`5%TEwUu<#! zR<6AkFnFebKrL&0S!ixU!l_}L*+g2##fY~nds~cXw~zIW?2J0<_x*_78ILw;3>=p; z>U+XPB6l#xBR+G+2&xaR+#x;Mfo$`8i|@!qszz+_LpME)0y%3mZ<3Gf$x}zzjHgqA z{MZO-uaFnpYd1~1I}nc-Qjg-wMlX*NZWmIId-%>s7PfOqfS!ONL+;ipz@j8o_;NLm zUYqJfHxroR+#7`gCa|3K7tHqD;NE#8TD5Zkjo`qz6wWhppc^)kelnv?!8;6xX!Ma9 z!hv^*{mbF#AIM&xa2=hhjitgZjT;Ah1!qY(c}tOH=Ceeuh09!(fZLxnygcG7&X~`N z?bCd%SBKG`#rIvq<$F=ZmLIEvxAIWD?fBO7BdL8#1KPQ%CjA$} z>1+PQ&6e;>7t+W>5R;8=R*VFB&E8;ole~71c|bNQ*dz3=P%qg^>%S1a0LW#YW`u8Z z2sp(IBk0q>O8Qe775!P7zz9{vL1ug8g}t&CV2GrLV1!RK=-Q6jL?P4W1t;2?JD-*tYGkN@t>$2`R%u;akPEV}CfCHVGBabl z=-5_W?A@jlNSVtH9dC?wCg>O{^OslzIy_#puMtlUzXf&c4{rL1aM<1~NF2C&0K89@ z4w&}si#JU2V!rzY?P1YjDhG1|-T5)e%<+OB1IWK2F@RbCn9K99SYHH(0Q(ydVX^nf z9*;%xSF!K>^L4DY!>0kUh;c@^DuZd;>+=IM-vj0pXaW5m8yb&@$sl2xv-F-7Z!sT- zafxZ@{duT^_S<2;0cQ4#B+N}41MO4&K!J~Hlmw3M8lw@&oRBr%+QfHq7YUkf{m#~B0L%9X6b=5ySQyLg<7?$c~b z#|k)oC-mUs-|_*!T|A(tI&x9J1nlcL8Gtq~M1}y3@3kAyt7#Pk?N;djo_s!dh)g}r z`pW$8MDR=d{g>c^9Di7qCO9zubkF_#`V^8euC;7h?#X-6zdfVAeCgK{)F+*41eA}m zF#`EhLv5msx>m;7Q0HN=XM;g1$C=Z(=azo4wa$;S!^;O_`!}%^Kh1EunAjc~qx&rwJZo%-S863Xkxi)hNJjv{Z&(4z%YR z39ynDZO&VCAlaX4IMh13pAC(+`F=6PpwR^%?$ZLBiRSq18G zVRdY4Uvc6hgkbH?$>iwp-Cezu`^?|k(^^&Wj0X#If{I6Zgi_0(j zlfOounX+1scv5Z{WnFyi6Nu8A`^N0DI$*ah3X*lOG=~|OzrY)~mqs0tp#wuQ0J5yQ z2&9LOpnf#s!4qP9;o+f(C}LK9ziG~yv{QXHqQ;M}wDePu^;V_;k%~|+rN~E=<@Rp-_d!D7?Mb{?F{^uQ z;!OZW1ZbVssT1>BnwLBbyELP2#cs&Bm+!jhW&y@Au^{Fa1ib*X>K%uGsba_~vXo6x zbI-SrOt8MT429Blbl@tR%P!>n+aJ{gf=ZRa5BANP!=YrUOLf-Gk9>cc<3O`5y-`^l<*|Mzyf&K_Ylh3dYbeoN0@vk2vl zXRAv{x{xg{sejfSnr=b%pvJbd_m(T3Q9ue^QJ>sw5jr=Pg>NWMG?%8|l@dOay=k70 zrF%im+*rH#{&8{XNxr!^Z7*Z(zC9>8p)UlhA~v$|Zy(H99q=lE@W0#60)pcA^-k@~ zdyy6EUidV3v@ZA>R2d5=YO=!0|D(;RzKiUVX|lf#nG|G5v^;8y1jG|`~i(X0MxxXHkx|3 z7-G0VEFgg;7#`cdwEh*D3fC3s{xV*%nv#x>Acc(ueSD5o8kFj-yv7Hzcz*b-!?k^k zJSwPC!fok&c)-aUpfb7AN!xQ10D8bxbIa=2)|EXK(RdS8*@d_sDN>ZErtQ56DzpGdO`BW34LxAW z@>H^z9j)sw3ON3`&LNk-?O7fGjUVEtG0f(kvV|5!e~XJj*|4IN(%7zj(?$S_K0;m{ zKXl=KW%kR$In?%eivLmu4Aj`$FKEuo!6k#a$bn)-{x|Dix(cEcVDk${Yg8&Y2DNS_h$bU~1O}=1KEXS1p!ZoF^Fb-J;g}1F1LEU1IlLH-r zLa*e4K%p zf901Y7yWu|Xn1b8Y*z2w6af`bP%A~ksHfEj=06J&0`VAhrZ)C2kn=$dBFh5(GbZV@$mDi*1|8!ImV6&DfgYk;QBUGn*0ziGo z4c%DY(6FM$wRp}D1xnUU6hGlL#I7{c~zUOX6f;NdbcY|jRE;0VKJi74Nn3(+cY2&caW}>%Gsf)%^B(?u)IzSyhkc04fTwhWdcC01oZFGxfP>Jp$t5#+O(c>xz87e%4(0MMT$&7TPwI} zu1e~QE4WJvy3@_1;|_SN?DEK{W&N~CqtAqatv6_Mscc8YL_)ljg zqHqmnDJoJvJu|7-7o`6wb|h11&iucO6;f!Ajfcf`EBy+5-1Z$q5NkszlZ47$5C!P2 z$~31h|Gd7p5m_(5hH)G(z9?8v%K|&wS4&l?g zU%>m(2LTD7oLB9Kr#x-@!ub0T$!qz+l2;oEc=H zo32XmHJ={dIR7+jH#q1SOn5luQmftqVxfgu1>$~-}_Ad?A&<(hn4t)+R^sVEQWVP-Zgyvn~Z2Y>4i^{jtLl~{Y01)`YA*{4= zcaq^3$j7g`YoxjI_HFw){;eqRB|$~+&&u9u6DhDa&HM-E0IB}|`XzCB9Sp%}_P!$l ztupPFDgA+3AJ*MLiveA*uRNjd>Qq7(@EK6Gm{nmBmwIKhXKiyWsJPvQq_~fitxxem zedd?hE^N1dNnoMs1C%WN@BdS8aJWDpd)rq4<_Sb)_dNy;n$CM_EcnR(0XP_yF*=3C zI8%CA`dis&9aHT!OS6ei94L)Zi1;D)3w}Z6j*U)-JW0v^4FN<4z#{l|$NnSlh?CDb zme|*=|0(%Lakfnnqiib4aI`y<@&_QKz7FZlD3`3hWnoDHa$>_|{0;wmG@&VFSXB0K z9w;=dCr z%U!>*-A)Evy(%?cC!eMGv$asC{bhByGKELYEv*}bgk8xB%QE!BepZ+tOgq5Buv#ey zUd1Eecn2UWL|KA-fueG3+-1tZU zq~x9fKuDsLq(~EsJBVu|9}r3(IReNO@3^y5jEg=tM(;i&lx3FY;NSX1sX$*w$)M|Z zl%(N4zf)4E-hr*jk}2ZzNDLku(jc9ym{OpQIRK_RLV={`Bnk&6BN5 zWYs7E+YL#WU=(T=PgeyJ_c&6p#n1vG4Ie?`M`+IW_SS+p#FS18Xw)8SK~N&zpn>^Z zu=<(pN}<$ZSL7g0+9bmFl`!B1Ado)1y@hg zi;Nk074UHh4hO7vm$uXTv+qN^iW@druKP!UHq2#>6PbY@13!Vrfuz23nPW8IL2Loa zyy`fv9!pJU1-XY5Wtoz9pZw}&VQT?8O39^rE=>lEF405V%g4I3{dW%}3*zcnp_$ui z0<}lt##?ylCzNGaZx^JxsMGz$&YJFvMWE{IuyLsYkQa`2!UxV>s2jf9sN!Tl?8|oK zT|7u1%^iy)GTnO@V7vlSs-GL#PdiO_X^NzqBh`B~6Qx^7DV4xpG?`&p)+!evi%|yP zzyBmH{r&?Kc#*!p;^*L{2l{;#6&=Z})S39jqz!58sK z820Vr`3(eWj(AsIoW&-(Nh!%k2^bn90O977-k)9BGw`!uHr>WSJ@zPJ2X{X|)ReuQ ze7G~~?8aytt=HlbLwN(x3w$V0HHy@jY#Q8Mr$)E8mY>dkrKb{A)!kE=EFAxmUfBL< zJiXx?O9J$EQk}ReHO`s~^=s>w8WtY$0)5Y|v>sb{=2t)MwKnlpw%)ovH_|MOuSN;h zH3ETjiu1L6ATbV>@g8*j;nQxeUZfr-v`OVLNH zR^}lE5Mv5}MC4vMWAV!vSVJ7+!Hoy|}jbIj%v_J^A5WF_HuG#Z^#~?T>rU4N}lb7L~2t@m!I_|(nh8}Plvdm<3K&nW$ zXTE_z8#8Lj1VrqH+$R9nc0EundM!27s>&%2<|LSyZHmpCE0C|r&bV;W%d;!V&Z-gh zQ2dcK0nWMluD@3RghyySVyLA3+-2w3Bj|^nuqWJ8%v3v)9=K=&S^!krg1pvaT2v}S z02qy||6)6`A80{=8$i;U10$2%!xCV=^)W8Euca_+5gLijrop$9acGzL#_VH;Eu+-} ztW{y@Qm`&(sGbTS$Ib%IRl%{!XGnA^IlZu}*t8FDfomf(8DBVRxeGEk;MuQr}PwjjO;y1w6!q^8OF!50ZRrB}dY{8$x=DOK0UI#hG= zq68IJ@7|Z;ge^YoK`DnG`VIEriNt;sSLTA1yuo@zmz8PG^B!V-oA8OmO*yck6zU9U za1?K?%n-AenwUM;ee+zcpTUvB1xO*vof-OLh<5XMD#8f+0h=YdwNbc}=juvvIfz;g z8IGus+(nSjVb*e({b)(sT3*d3;rqL9j(yM(p6dVw?%`?oMTnYrW1n*~&9Gc~S0H|e zz0zT7q+>j416f4EZH4*!z%AfW?CiG#0L@lB|MCxJlOgbwTPHmSYSkqEOg3Wx6Uzmx z3WME30bF&z z0Sy3W&;cE!f!Z)HmJ*2^b#6VBg((hTaJmg)d)9*mz?oN0W>-0&7BMzjjNcjg0-4=t zuv!Se#J?^N$Tk%DcD}nme3e&PDp0mLW!O{pNs5|=64PY>;tp9s7ozg2D)Xw`X?nO*3;ulr$ht>Hd{-p6c1 z2Pjzqwh8tI!Gd-gns3|e{;^SSx4CvCk)1N809=59A;wrSV{L;_+5_%03X6m(M)OU+ zfSi%W+3XIr>$lGXxYjpWr@MPNYbl0X9A?S{rdhab7~bYrJtcOWES%w&v)PcWLOzfj zO^+`@kA7Sxs(^-IW{Kfo{R~X8(q)z7zf3Q7d<SM+pTagDqZ` zg7o=3use5h+~iZv9sB>mcYXEeSOmy~=vM>zR|lQf6(#vbmWAWi$(aYW7%2Cr=#K!M zZ5*dK;D;)cM{{XdC=^1qVKXt&Dl|)vmbnx*T2OtPR#Sg?Itv4xqxT7 z#2&l&U1jCWfOeMs-1ng?Uly!_PP2#g-#O)006gxkEz7?n8V1pu0ua~g92PG(@n@j+ z!lW@imsAk9I3W&Q!v(hd`J^+QP>s^fri`Dj*NT15TV4_`mDzF7alG_p zgd@<)O8K2Qduel@IJ(5>cHMj2}u&-DVqj@nc)OxpmbW2FHc$F zO`{zy{Q?;oq+1VE7MXN=N0AOI6uv{tRmo}g>%&ib!EmyWY~kLOF}%G>If*@n9B7_PNFH!6EUL@VZf+$&;9?>icXJM;dJ!W;1$oIPft_5 zqCo0Yvd&%t8WC_5jI0ojA=}EgVgJLT{l$^nfng8btD@iGNG(VGV3uHD{RbK3I9%pZ~bjAw3*9C|9zQsS8bNwR;^_HfZQ}rw&?dtjlVE!f% z3%9jzu4rqz{_yVs(UcTDvqA?WD4gB9{3H-Xf$I<%R%G;4E>zS91TZQYEal-WcAsso z^O7TTcH4zrebVG0+gu_gkAZLWFIXh^L%YIP{sg~^{vx00x{|19vbAj*5J1bC$+R4(Ro(ObHk*Unmj*@wGc4eS1Cl9q zpQ%{fIn6gCs~gy5sp9OhDon=a!qO0j>Y?kOp2T7A4P|$d?e_KZNDY08T3qf8n>`pk zH)kdCEmTZ5HHg~KG!?6?kBrw=no$6ruW}cxY6`LOXVqN6TYqQuca_r|@2B{er2`uU zS^uK{2Ex`&3cS2Fm*g`|--360Apk`IXiVTCQkaz0yU<<8q*D`Cx7S0`#qv!j&1T| zlCq+QF)t&4f52IK&VKsl=YGQ3%V@8`8<$N?OdPA4 zKKG|PMY<^X(ij6RLd^MUJ%;L3w7VHl&hrgMy*zPoXlb0GF3*_z$JQmsG!HfV_fAgR z?w2~pSBtZgg^k_L8_gh3*P5rD2&==ul#oK4Cx7_~EBB2X?AhnI>J@W`7owMxMSRvg ztK7}EYLz^VTPZk%Sb{rVU#=K-g*{7faaDX)VgM+H$T6{p`fkI?vO+#mm?XRkz%Qa`!6!UnGc})UNJX z?elj0l|(IX`oI(;39Vkn(&o!d9CuFvWJgF#i$gf_i`(wyczH=S)JED*YpoXtYZ>TBQoO;U2VMZu-Hr@Xu5o&9qcCOx6l8?^CrP^%q)mgo# z|5R+lR=ozaeR=M6vQ9nvUhyJW_^JhLqRhY(BK_N855`1+*FNu^T%^vQ))8&wr{7Y zA_GlnBRN|qANHs}RUzj}MNe4dEcjPAzA8k%y;sjr&z?sUIHdfYB9OIGp8r}Xa(?k_ z*W660gZnxUiMaYdnjSs1>hcLQO5A!KNacSEBd^e@(IUvi`AWCT^n^P@rsInKfqPTv ztZ<=~`b(5uXD5TG2z15Ma!z>E^`4dBP3ZatQQ1qgWaJ9XjS{E@$f<1%h$&nxFx?t5 z_7CYX@t&5nvE`Sc!SH+STcYSjmz_Lw(R!WxtK~^ zV`e08=vAi#;nH)Xed+cpi6Nq?W*S|$9-ayk6F9|D^w`}d!HvR5@nXa?xpLt+&O6V5 z*&rAn-!|UpBV^9Pet%hxo}B^G!n9zXBcNMVGm8*r~4j7 z8j=BMa&OgL*AChHcC>i^jxviKx){vo1yQ6#22oM?MCpnEmwt2a6o+;Fs9Q?*J@LNX zXW=;*a@}&WqeqoWK}WT!ErOIaB_>J4*va4G+B-?5F6$gY>QHCfuP581^bG|17G8gG ze8st~?xhIt=}1$4ZT>b?x${RaGCh!34S^q+w^oNf6}e5Wr=lD>5CRMRMs%3XhLZ9{f0K`X2{nJjtQ?6{AIEb*Klt zdhiXwNgWMeyNy?&t*$b#RJ<#?K*-G+zIW7Cy5_7hxpec3y_Z-LP)y>ZrENv|5>u|p zBku`r0aq%Pb_1UR@}n~1vZe|*PFd$wdlG8@Q^(LEs(`DFebw$GO49*u8-U>&7W-_9KSA)Ry_#WwER}Ot7r>0+Kyy**hB%B;Kz= zOHyxKyJC}hW-xRz4ENQ!q1&z&J3*hgy}szVW;heXrWCR?X@RrNf5muD-*J<4D(ZYF zKAqi^cKh?(7dRI}v>ivdG|}&K9b{_q^l-0{hlm*f3+;P+3ApjcSe|lp(Re3}1h=Q0 z(#?osdVopvxm=3qKk(-x`4mc4aFMNU*oX^e9Zicbd3sFb{pCj=-chh$q5W{G)w8I@ zTwqXflB-R-ua@Qwn=&G=!LsRNhMGFgHB(=I6yCw}jHUqeWhzE|p?;rZ7my_@0|U`F zouxXpRmKfauiZ-1GVa>Q6*v4)H*mVCZlaaCJafrbNq_?nAAhtydhz548)c|#QmnC) z^FkQzx4d#yK{`%k71xaX(m>9o$CDgdgX|5iw$ooRa7d4M-IENl-$$j}uU%mQ_H0~g z=`L-Z%9h6)I&}4$_EX@Vk4X-GJAC`tk4Gaeu4kUUQH>P3@Qp^0I)rvGM_TA2Rl3G@ z#htq|BX}`*F6WUvx{rZJx;#@*Wb2ZtQh0j&Z}!53`lL7=CVNS{KARH{bqe&KsWgNb zdCWLFgri)}YuhADDrf;?W?PmML5qiueq9==nYs7U<4keH!#h(O|im5%v!`>vV z$V^$cDv;f@r(tJcpFI^~ZRF?rcG7L(PqR)SOZE=vx2)Oo#8POlRJqyFF0o_6H^_`G zJ7Yed{d~4{FAoAyWKV%Jk2~szWhO6 z_$=$}h<_q;seyyY_+97Ej<4P(us$FQ?e!OZPXEH!J!HABFU3Q30~|X0&AG4Atoj3) z_lUI2-({CEW)ePmpdXX(MrujkX*Sez7Yh0T3&bhaCFo!cD%B_2eI|OX?NtVEPquSX zo-Efn8$rg}C0Am$vabH7N=&$i(TjwrqVj0$F}j-I^IpJn|H#B;`BJj1&D(9#c@=-= zEC-Pli;Sljgw);quf|l|#NP7h;=4r;0wVk>^uKl_J<=@q{L-nu7uu|8>hJ`uEL;%t z^pO!v)53JwI+?xn&{x`8GM=tk2l7~g;y9%o^n#h0CS(jBso5y6huoGCS3l?KfL(%8 zf>VzmI<_CErzy8*JFLhQiZgiI84=ryo}xc9-e1Dev0mE1 zN6v?#nBgK31Jks{;NP=%+Q50akkL9WvrDwfci79=^mkt}4Xu}&Im^Rof}okRL@{}$ zsRwo)cfPBVq_mvIBt<^qB8FaGT#Cp}W*4W_gdS1KC^sytv3vW0e9sM6lNq08gp}8H z3A_iop2nf)zble}20ldrC z?moj9r?;P<-pic8XXa;3OrQ(&1}P2!p;ZPZ-qTkhQ|C_A8)Q8bc{N?csLdmsvD5aZ zsZ~wA4~_-6B$o%1o*G_B}`On)wXS!se-AYM${ve4=D@tEPKVsI0h(?Tr{4e7*9>f zQ*)P;eRW_CBa;>_7!=!Gh`g(fidX#b>na=DkvH7_^kwD!vR!X!pbIFDxGH8y=$i0< zeb-XHArT;C#eB2z)~Hn^YnK+j`cM`(hIyv=Q?<=|b?z>%w0Y~)5#*Q}gB!gUp%(#E z-;9wE$71m4n+gp zzoGk7J4}PGl51=&_DoHd<4aaox7pb@hRj{3gbZ}0)~Xmh8>6#c7c3^e_P7)j`9y7J zfepp2N3Ex~emkl<>W@U_j+$JYqq&&*J-&wWE*J} zit+db=YRFRp&(vEHZ2j9mWy7Y%hGMUFj6-8x+Ck&-z+2ycffl`ePYehu{Ma4W%~@( z4f;?eOhjogQu7wK1S3o5pZGHpm=98KDt1Y$1yx}2_=oyNA~MFfyXvdUf+Roq5MIuY z%X0ksBB9bhf|wyq9ot;5=R2Nzr@#xl9*YX1&&eSHiCh}nTApfBoZJsxN{s|;6aL6W zKd2Jw2Z-;TJ3h_nLVDjKTkvbG2fiY7&oJDGr=Wb>AZj5=kOhvRdzuk@=-R(W)0TJ& zZc?P2w`!dGMeb^vciOE|0ySKp|6vLlik_^2Q`|1sw#vq&_~!bGdSrX@X;IOG*yqf9 zhYxk_N?c;frQ54SS$Z~_GW=3Sc;J?UB??7WIakr_-fx#@Cz--$Zmi7}zsQnJ&31RV z8(HBY7@{quz+W-f=#zWnH+T0Ce^kc z%uyiW|1))y_rX*Ufpao2MuGWSQ#O)s1 zFNHe5STB#Lwe{rX*NnVk8}W@<*rF@H>M%q4-S`ay`rZd(;;# zvWkn-{B0U3RS#5OL_G2|N}@4RFSQPei(6tm!EC?Pm205ZM422K*f?KWZ|HmB&4l3T zwCrXK1;Q><6ZQtn7I2n089RL-4hTKF@L{|LNN7u7fd z#qqIq&nm^$vk}CsdEAI&Qnkye=Z0)fU3F3$WqFtl@`1u%;yHu(;=3g&CWd+Zb?h@( z9+o;G+AOb5v{`ETF7(kF*ufLdF|=<_zRpQ>5LWW2#k#O@Mpqnd&;vu@Yaz_ex7;={ z6Z93Y>ZHCfz$YYjecfsLi>ww2#RozS#H6a0ipD9!>ykCS23(hL>l8DhO}JF}#&Bb@ z_*Xv%Wv0ln;iUS$cOIKNyEOiTd|~i>8^2r!{oMe`xBMmD|K{vGd|^yGQUQyi`2DMY z!e=inYX;%1S-Jeh>Q>)UM@D9I59Tq^O=u4r`0d2hT?|hQRYT|*#l*rV{i8<(Yl@h} znL;Wy`@gE`@UUYAVOOD7iAQDob72xAJ*MD^%Qxa8okDs8c2hQ*kc-td%e}X{xYCVO z=@De4j9nTh&F@5Oid(vPZnmA|+9U>p z8SO7uduBZ>_FQ807j;{Z>Zgt_(6J7GQH+aZzxn4`-BhmyBCj=GS3VEEG|e5F58>m! zjbWE9kFoFvcTaY2&&fzQvmo9kov=rB!s`Jx(_rej;bOnlJU8kbxpN=$Y&@JiGtXh6 zm|+y`<$KSSqw=J;hF>pyd29EhF}*AR@OUWKP%j`w#L+~PJU%6NIW4S< zX$K2Bu;ZmMkt~w^ypVX3TSS*bb+uWxxYJa zuR8yFTBsSk_1KTJ{3aejchaf-OC>4F2S}SL20kfySh`$J$qrQu)8irFhO0W2!X}Jn z^qMIhtaB39zT`+2H5F@=tvlk=M>rU-xGtcW^{4L&dqqw$1&F%kIiRLSDQNmp%Crhf z)ZC3m;HZ1K)@ECbEt~?S-f!_r)rHXQ=~IKO~8jbT{PC5C_!PZH3q5?O{2uDMpbE9bD-v z3wMdnP(QNzEbnzb#$R|jAu)~d^|Mg`#Cncv>b)=`ebAAb8_62UVw~(x$IVWJ773IQ zZ`7GcTM5<*mX|Jj7+d)z#F;uAT?W%CwD`yMU+2JDKl->CiN8d!&3XPbO^_BpQvI93 zWDR-Bugl zv=#>>9VzJOjOkBZMe*!>9u3YaJbh4qgk~6K%`A6yi$8z+Lh12pY<)#|sz|J0Zg-a9 zrw*@F_AY<@v9{9`r@FjZ!UJ)yVmqp;=gy=DiVJksXq^F;i2DQ~-`d^*>~JYLRQc;^ zhQgfbo-6Epf4^8={FjMH+>$eqEctD-dp$f{p9_bz!L=;6#ym4StL#3e#02Y$)V0%> zTglPZgy7m*syv^vGod%T%|){x4G&riCrew)5H-eBeSbHZ>#4CFnitA3-inAU*9mS%vSoe78_{NsmRfv zeI*kU)C@!WujK&+I{Vcc`9k*CC=GLEmBN#U*TiU;6`gjUmxEr3Sp1Ytt=1MbR|~K( z&GxTc`uyGMyC!!2Vt3vacFmGm*4+1uzQ;pqMXXl|-dtfJp@C8wQNw_`y!P$5-1j%b z)cSwCruan3?f*ibjO=ZLJfUrjq{hS3O@bbv z$lQ!lOp#&kLP?krKb%Iek$@N};`WLgAx(C7|Avwtb*|UOK@U)^U%QwB-V#d5Ugm0R zqS3ed@XLxDrjIJ}n*IXZv^0ys+9oRN{N)n!cxTgour>6FiyF=sInBj?-9?mu5G@L! zvQvV$l4lFM9n;iS)QDJ3ihVBj_urta8g_{C{{^f1g#U@MxTCRX-*}WubzF+_nf~Ky zKm$jp1AC|?jdX2jyxb2AB(&NGc$~P{zPjkn(73(j_5)tNcHeOc!641`%&-_&`MECf z)|PWkt2yDWhdQ53(aDM&t)uZ}f{n{ga(8IZ;$CrlmX&DhJ6+C^ME}4i*78~Qw4;5u zyjonaC~lbHQkT$(EoaXQ*guM{As(ohs+Mf$Hnv_P9@)niJufwHmM0e9Tj6KcHBzFl zT`iG}|ido7N3ND}EOG{^DK_6lXB(`9EBFxsYXvt6-bW7fzxKabGP>g|&_A zL`qW3%}I?L^)kr7E?L!0EJOqsjca}%;OklX^5zA?Uwb+&mC14=VIjj7i$_-c!&8fiS*sq7 z42e{YXVlOYzRnH(>%4AJK@j$X>YKb-iDhEG4}FO>jU{gz7$J?7w2hOUp7ie)?p$lq z2uDz4eL=hCB>ptF(0o%rP;!2+sZqW-(05y0Dz|1m?E38m0A6eHYMg1rZ_2G%SYE`4 zW!~r>_pN!W=)c~Zqn6|`Fc=&CCZ*`p$@R_(@$EF1>ECZ?g11OemOY)ZMc^J29Hn7A zsHo5X*wn~8@3`t2v|cUpTTFD!_xt@^fV?`%6iRaK2@8gOq_4e5EG z(|U>DOmS<_1mlykf*{6 z$LRTV$-OBaj=!6$v*4r15E=u$4=t6+jPb-9RH_P)WdS5H(`5YBxUi>j<86-eqIxTF z3eqWWe=4FJC3Ie5M@!s#*fm?*`xhQzd7%FFhq`t-ObbOQVb$Odn}3(`yma7G=qwPc zA)PmIY*AuVo6P^nxVGGAxPxhoDZt23Q-^^&DtWY7Tm&SAH@rNc$2YL3Vs!+EiKuFMY-MHW0&#mLr~Z3vHudHRnY`A=V! zP+vkkmW(oA61@;(WchZQhrg6!-T(6?@x1BYTiCcrPXdCs-Al_EFm=-;X5U+FF&aF% zZdb5JkXq|TEM5LMZwi!hel&zU0O&-?cYDswwt`)BLXN#B1xhfI9Zksy>c6t(2@1xA zOyx)^D$pV%&_u{{%u1%l0lCJ>9^03f0#*Kju;Wp{GsV?(HUU$cQs?_U+iBC_M=lotMKEzfG_aAe&>fuGJ@Reh4UWOC*9Nv55DD1!2wTN z`O#|W&`LB}7~3N+$JMvI&NlMm^{wrb=27qZ*r3vMbBZFARiP(C%ymwrU%js+_X&Vh z@(bklN|THmsId9 zHpD19h;ROlQ;0bZectn=A#4(H5u+c|Y<(N%)sxyK=4R-gwwKn(3kOv;GD1E7@zY&- zseTbk|Bth;42yE>zXlOJ3W$hE2`DNc?U0gs1VLbEq)QlZfB}(^4v}W)4pD@myQE8o z2I&q#KuWsn-J?D}M~~;Z&j0-~mtVZN?|bk4i}hP;?bzvUiw*|9=V6@72`sx~ELvI@ zRm_!|*qbA-vwQ6%Q~rb>`>S(75prF{-?PsWUoRuonSP3qIK)%`Cy+Fd#h-%lZSS7| zT+}Y|4!{gb&?gSzJy+WSR`nN*u?}^%o0hgrkmf+;ggj7WFpKVm^o)BA5mfi-C(=c3 zn$YA8iMQ$^gGxs9(NGf6C-qo7@vWvcovJ$NsaEN-gcN}!H#+d!?ngF$D%%^N z8i`_l>TDg_9wQyU91aTJY4kma?$S~@pO8`1LXoSRkLe#BNA)sx%4xon-0>t&qEf?W z_~N6bX_DH*A=YB3~v7dt;+j(=1~si3mi?1 zSVb@H=N`ttTXCNBsW>7mA&D`hY48Qk4dui39&Vz|nh=8T1^y3b~$^7uX z)|}%DJ5qQe^q>=0TadD<rl;uX>4i*FtO3V+v9E7w3W{mIqmuk;O!SF02=<~N(k(}NPnd% zq<@i2Rl{<6l7G5*C<;oF1T`5C-fy@}mt@2#p@1Fyv15xX=QLPpAz31=F0L89m!Nnz z?K=%0J+oqpq{3-_k;nP80-ANrG@U9Fp>?ZLJY~QwkWPShB~on0&wtKy&sa=LOw(@8 zQ9(}qs+Z0yjxQoqs{B|cbJuS=H@?ABBR&|>HtHQb{@@BmRlT;^(Vo9lT-;+BeST`+ z_xzQr6sU{uBt5*RRx52RCqRYQ|8VXj^Nvli3N*d^k<GR826}Ok*V0sq zRF=43*FJO`hj1bJ$^p5=W&ij9cS5ES_cSxt&wXWFi$platUGuc>R)z|%-U6a*%kAi zq_^VyB1kD0bMKxz_FSVJveuJB(|mr!eu34$J)@&6v1w3Cqt85TzJinRmy&$7PVFRb zXkeKL6V;*Yez1S}{>`Y5#;{F(u;US)VG$^&7d07RMv4dnHOYY8jr#5wNKr8=O}n~g z*q7s)^w-x9YN4R_nAf~`+Zv_ftJ3!B6pxy2)XsQSgRTEn3vJyxCH71S(|!X1Oy!+H z@BLIuUF$M0UI?y!3P9jv7@*efRs&?fQ2t<{cO`nGB0HW}7L1*~FqxO>jRD{)%~)q9 z9p@6bVX^B#pl^6uLaQ{Br%b&aJ;|!YRR41R@Ne(V6dTdnL|V~U7`3?nbR;^9>1|lr zzXP0NIpF!rRymUT^M|+Dw6y3163Dr}ket@$o);OXSB7Vge45*TN1uzD3TWJi4Upip zh;oGA*6Th^oKv1~h3i$L=G7v#2E3Jdq2RLi&F;G&_&}|Lg0Hna*8jf#@+6tJ%Ljte zuBma@fC*@y9~EjpM~7qLNyvk_V6)-MU&Eg28s-?zV2gx4VW;aRu1|G8ww@Hu`k z07x!Fb)~=9*O}5!UE2v(VL%?>x~V`{U8^0n?7J)`L1*y{V73&C+vgOFA7^EJiRG1o zc2eq7kkCUfL?a8~D9b4PLOn$6oibL^3$THFqtG>SOvV#UFV5$_iRPI-huH&f=}kr| zvO4|pLO;7P)47O$S>*acMf%j4gs8NWX#UC>*}~G6STof%NSM~!vS3O~B_tWBrCQab zEIjgrb|P`#O{+Th?k|CUec>j=nr*O6iXJrSqZ^w~m&V^U4bGan|2@!)ZPK~2l4DEb z@HPHG%)pxmE#z67$FDV#FWDKZQq-cHj?fwO98Wj=dIH;qH+qA7^EvyLNkx+pS5z4m zOS0p+Pj$Y07&;qI)wg5F?^Rm!ywc)Hd`5>7JZ3n^hN@z+qUNQ%+vXVR$6H6;=V?G^ zSDvJtLd$gd(rrEMQF56!$dV*N4D&M8ycPl|>*DAI3jeLZud8p@u=i{_BNS6!!PILU zE0dUb6W#7wn!ojReP&GlYZ)hBR;F6%YWl6DsR!w0_I<0i>)&7g?^#ZjtJZy7)I>NS zVIktCNsjc(WHPAkXk86={QZ1s!QQNH?bwB#b5;+mo`HNjbh6}~=YKYo9snz8jJiE{ z+QjN@k)}gM&B{jUS1CLED8ku5@UJZ&hV4CAxs~;n08`9pCk+ER7ti`U^}Of@GRr&9Rg_bdPX2@#cKa0YVQMKLnw^;tX1zmUXQIF=XBuer4l_2c?9gL-ZyZ zV~h10vtxu@wf4Ik8)n`;90b4Q{KVIVch76n@PZQ`@_GNl1}(%jYB(18n;K8|^wamC z7-sRlThs7)wUQdLrW9}cSXK!lnDBNbpa&rj_Qm94+B7ayd08}vWZ>b_ynammhIETG-+7S| zK3@8e$9y7Hd-n5Su~>A3AM@o_!aaQd0|%IM=J>)Z?giFGs&k_v*`OIya*!5ze_7)( zY(YGyZD%eyK^Hle9UJ367sL|pMFn#*Utipy$FDkhQ!Zc_;I5Qi^pK`8?cvAnKS`mc z=FgdQWp?zP8f!_GzmEHEzj$xw=40n%ok@*3e5L%=^mHR!X?yj4RNGYvO#OrR9-Yx- z7+P$!Ce99zI}i=dz7EZ{?l;n)eZ{+C_PQCwb^tDg+pRH^{t{aAa-Y5#-5ln@09`)W zL~~;tIzj@FB3`QB0fIMi2H$_h_5rAUrB5r|m^GvYwOi=O5nz0fo&<;%;BZ|BbG*pw zIWp-={I(ysZSti+BNYw^AKeaxV$ss5{rIa)S#z_7LkXe zj&J<)H{JMft-Ni+#*g$vHf1W|R6;|ymh+yW_A7%vqfhNmmb>0k%}(RG^31?zRwg%QHSz$lt5kvq^=#2$W1|!bqzU+q~Ci zN$Nu0jr%FPuZD?wGj6+Ecv=-oP?v73Ib)(ZrGR4I3Sw0>)(X8(vwv&5UYKNOD{YP2 zI$IVw601FNnOQ{0nYelQxwxOz71OYGMJlC)RI02;N4Q5ry@pSZ>h|*UoueU$u1+HD zSI*dUU&!-ZQaZNN$s|8imG<+z&(rgd37F&6-ap&lfQVZyreB^-Q!gscN^@qfF({#0 z=CJ&rBMpn^<5n9fR#-Lx8z?M?S=p&g+lXJ+OkMu@OwU_>c8=SZGx(X1h&Iwho@(v0 z`Owg;5}pjQ<0U5%<;=VuvRIL)S$a9N*3W6+R?8$}fMBiEVsx-a4Umhh3Vu#vjxi~L`{jUPJqk2A4aIe=OKW`vw! z4*WHrnrc)ELFan90_>D>QC0}ykuv0Ig>tmF>cmBtSenl@tAF;MCU}ExRwtD=?bA?K zOO$4e!UOTF1r&G9?6-ozygJ!L+|T|4&-UHOGVcjHXE_QS_vghepX!A;XOkgy9osFR zkF>g7DxhM4wXSs&jDbb{x=&9n@owKOfizy==Dom7#Cd5(&v@CvMoFlxzW!F2yZo8^ zr{#4e7z_psc-Hl2ay{u4nAk>CzjW8*`9VZb*Q^vTaitx zk<)fUYAqEm?_Xj-#W0Xz$p&~*nF4JukMsl+_1ErRp=Yg1(2^xUSH+rbY1I_sex74> zc)XOYNc2JP(qkdzsCwX{rzM`8uCL{gtjfW8$EvQc-zn^jqslfia(Io|KN0lr0?3g^HnkTDcfzIr{Hfwm#;@3QOpc_IuyXRA z)6mXm5&PX7r|Y(BDPHaiyxfzk`4tMcw2e5g_7DXVfQG z_vYYUHpv6S6S1y3+j#yF25=^sI8VXF$ih3#s_LRVgOO+al@ZM0YWVk0Z`G!%7r)Vr zFlUMM-ID4(Ay)I`*Au=*NZrPr^r68f$^fOGgtM@DojN^!$c*K6PGpmit9LJG{$Xla z)hO!^FW2-0X;3>fV;8B6G?dF2$TMwAv1hX$I#jQ%-#=?fF-w(rk9hfISRJ_(Dqs6v z?`;B$P*3OS0Kwy(KvXJD)-?F|n{!{=lKa&~OmU znD>u3`e<)-Shz=CUws^!hAjP)d~QHG6dI#TXj7qSw6Zg=i=?j5{Olhz22i<{;i*vu z->~-`IPA3QbH$(>h~b68>^8ojv(M(cOyWvA=rrH>V)49bua;d3e&=0-7|+w|cp}E|Xe3{6>b~#z3{@m$wVxHo zm@11_wW!#t>aDa&EF5a$52`Lbc5%5EBfQpdVYp1;ki@QF6b13@J&F`dVz5p9u{j8! z_WQ_4=Vzb7eFg<*5gjkxDvsiIHk)j8U&{(lX={+McLN`z9$}lfn5#}s=^I5PQ9{~^ z4s_Ev=+Ly|s}=!NqMzzNK#Fdw{Ly+yNuU3aq~Z^+rK{V{3FrFL~=jQsmXCD2d>^bo%nbX{B5z6=E+ zT6_CVU;d^v9r#M0Kl(Uqw_z|T8oN1~Kg7rJq9!Nog*={ov-1ON0dtlM@RI2~VOUvg zK*D)u9#&=g^9udLfuxThdmP7}hqz4LRErCBFIV__gKqZ>$b_NKCko}fS9hJ?CNW?e zTy}SJ+iYs`)a8Frc9ox0Ua3PrE%IqV5#>&v{=jL9Ye9CkYAWehah=v$rru2_ouaug zos6Y8c5nI$uc`)xiAd~lG_%1oXF}$oq_h3;=3|Ov;Ci82N`a=N7exzM`^0+wFv7T* zw*>uF?AmwY_1=K~)^rGdT-pBp6HOfZc-b3F>pBjvO8?xzDB~M^tSeyb(Y$mC(K11DycHq7K>~D=en(_P@6E4o)jz1MRoYjxeLuzCc-4KBn03zDU*< z3E0wcFkmx;hW^v^_2{FtsHx zy|Tzpi)1G0)5=i(wD#$GWlKdJ|BHxSAy(@W|bEiP+hH@Qz(L1P!bNQU!I^lmHF+Baf&a??ro6N|XlPBm(pSB-GP zMLxXlPvhweKPObemBBr^-1rce1sjXAM(OznzDB~t>l)kdbBtn4k_621qfNU{cQJ-T zTc`J(_y-#U?7Lv&n_H(MYEx5L1DUC;F=T0U^VY&4`eJ76E7pNrXGko)E&LBDR+g;N ze4@qW(=aSv9-h`|AV0(CuEYar67~*(9zV3eh&G(vc_-O%Ym0aNsAN2XseW`Fn0Yqy zR-Z)j2_GD)G6iV9fJczE6*X-Hu@S% zGOtaiiLnV!-QNk#biR1Gq@YcY!pmil#-VF7=y~r|nCd+GQkC~IhMs@a8L+!P$wSN$ z$xE1}DDMPVMo_#jrplg!F9zp2ij!MgJkJ#c%&!VjFD$EGdEOOriuBIuP|`-;Ls>-@KQuWtI#y1BN)ZKJclbd=vnG%b7$)uzC5J>z`jEE^Ck(y!NShQ z_YfUG5wfIFxKindJ~n9eN}v9IQT}zLyUzf2vB`_u?;PJge~Y(xr;e|PmVwkaf;4>% zmM-ulZrTuBh*C&v%2CXz(nMd-!;Xosrng6=Zlvkb3Y2#crE*uyu}0-M*DufHyTuH0 zU&v>_TU|-!m2BJaSijV?%yY|6G-k5lnrNU#SD#AERRZ0p?3JTWM(b@2Ml+GL&g4cP z0)V(qoYsX-z~)N`MqIb4?YONldQ5Ltew50jAt%QeuO+np(Tlcup3^8fljYcc2V6lW zKf9c*VuDi z5qW}w5LCxpQ*i9m0*1`|T`HBSepN$!W|sND0n>(7TL|&;QvHi_37@)uX%$qP=#`tK znN;{uu^b)Jjpxph%h;~^=vx2qA@L;Q=<%NOe6DU?jR=L@MK^(1oz+Zq(Wf^PIJU_ImC4`L}KTS~# z>>eBfO0IbE7=QJHhh-?j{_glJ7nI}#HS5An+#U-BT%zWK#|Td9GntF2VPKTyf1s`! zqswYhG3mBN4z*4`)m>S4+J=T%O*beoegV=?%>@b#(^KBZJVpOmVKI`Z+s>d@rWJU* z^E_Rm14b2LIAi~ukJsSJJ$@Haf!G$;uj^XMRa)8evVitcUsTi;1!wdv={GupP=D;!Lbzd{D?Pt$XP7u{q^ack-OkLT=64xYLRd z7;a09&e>q_oA`Dt=e=;1nQ#?tzYK?g?8;}eOK(FWOPXL<^*4@dM^@g)za{yvoTTqm zHG?+fV)A`Z%#12d&S?HaF@s?vkF`yFXCvpjMB#}>H5dC3J(%<5H^6sW}X7YM{M>)9vczv8#s+4NgyBkRma^NrsMc2~Ew)J4V7d`Nn17_1 z1CTeqdB)+sJbk3lhb;d|r_KPzX?*p^BbrC2=^_3lpnwzoH?&8!sB27>7NqajEC#sONDm#H9+j_ zGxA<3zbm8!JS6JS(Y{nl+En9p~p7+4~w5D$VIRVbRLA7jS1TX;W-0& zV)&hplGUj;H-U0X5q)QN5HRVeT3t=cJ;6mpT=zElXhK%1xf1(Pyjx>e-*w}0v}uU0 ztGm?89eoTOSB7PE#x0FJzZ?Btf)wcuuH)JZJ~ba%4V*1t9d)^4Twl(JoWL@dWR;CS zV;FrXl+F9T@FuJWV;n)Uaqk+7+Uww0*Fz{=0+G;nEkG3TA2n3QWoj?V@Ok5yZ{^i1 zJ6${Ge^|M1>cpdZuB&y@#ZX5uCxLAyl`u~3_w#Q}<~^tO5)R^S%8P83{Qe?-ADv_38h|ifBTdhks6S%D8TytL`!6?2v0@g7%XQ4akG|EowQv3Gwr~R5 zcAkFnR->O#ldUd$BIWbxnq-{oI6?V_2Sf ze%_-6b2N%B8rD_ddba#$u;k4xA|{;6^tTuGx6G@84!$_t6lRM<%fOlXVd>rcffZPUk(1ptwDAm!2FN6Qb{G&CDd(RyFs>_+coPCUCJ6R zS0O$7nu~@Uy3hpi=y}G;(zkMRbMKtlZ58>OjEB0N1N3QFMa^V7+Ap}9tQ{WmuDEA!kU3`#76j0u-eg~Y`UMfYHIx7)?;1%m{{-gr$a zCM|2|kFTH#5DWc975HuZdEf=V`!d=zZWr~|wSC@9Po@~)3X3{l0Hy&LZSso~Q=Ztt zITAXfgV6#ejW?wDkCMOy8S=~}1wsp*@Su)zRTa0@GD^O-H35$@(v}Qjo^9`mx)~5n14(w;Jx1f zAyqW8pKdWAu`M-Ra?5_n{s}hCovG5@cY3}B>NF?|)ZuXplr>}tm6uA!*;^_P#$^rr zaqu`?I}@s}jubBk?TGA_LY&v`93Snm3o9jPz(^=+u>NXA@L!#MFZ2|~A<)Mvl`g3@;hq4#xant|SdKbot zJR_v6G0PVt$wXFX*C&w0F6pN@YDEKzLR_B2F*A0e!rIiu?)S09INCX-Yl%K-LBnf!N5E;EP^%*zi%Xn-GeEPJDoKHa&MQUAMW%E{jhs={j;qKci z+M`_|yY=Rj518EllwrOoqy1LkF=rJ?!5@ksw8od^9ydB zf#R6A+J|)1J$SP@3Fao(r$~?5tumDWdoMfD0owTV1sQouf6RdFOM0sPfi!2cVO}j= z|Etf&?F2K`{7XBTyi)a(idTRW0t;gt+k|uOJ)y$9f#=Cj17cgyu>8eS{rj0#@lx4$ zaR#BqPhQ--b?AFo5=bp-LYL*jBl20)#`QislDS}{kb2d=9Z3e2{cnc(ipn3P-HH=B_$>Y2%*3P|Vo-fNyR*K=kkHZ_7I2Jf zNl~Nwiy=ZuDq^s+3U4)1$BC7_YSS0u8^5Lc*QBhffX5ymGyAPY%`|hav?9a(odTc> z>%1eOZfNu(ZqMy*54`W?)T|E?aWcmX=*Y!dS{z<&ZZ&l+dY~y)=&O>9K&Ucds2{Cj zKB-$INq5AVpgk2cWb;ux-qJGLGyVp5tn4(i%RkyruZ7^=iXdZW=IUQbLby~eOrY%X z%)ThG3)W0>EyuDoJ(J5%AG8)EmqB^af>6@RVS5&f9jDjIXcpTCK6>?j4MxUk@iczX z@fr5llMo8%<&GL}2kzLco(k8QeMYXPDW9r+sTHVP&CXP4TTY9SDAI0+UM19p05-yZ z>;*vBfE@%DQGRRJ`K(mR)#>X00RX!0iim2{Sj{=^tCl>gNL^#qrt}8;Tl>zpR{B-c z8k-8we^V`)jL+S!;T#+Q$5DJHzelGZ+kg(u0_|^$Z?OiyTkCgD|nME-;I?6RpY z?h6cKyyg+s@%)6JUetLkMEP_ls~0Y1g97*_8gVaFf+(p-EPc25NX14d574Ftp*&9% z6z&`;xToc$;JA2UH1gV9x3}~~e%559<3_~Swq~Qgz2sDki5j9b?>|ZQr)c9B7l_3} zQD{Rl0AD|DPB`=-HoD_Ljna=A4j}+&D5eZ0U=aRptilb|-CeeS{DIGWPb?kPj_LMR zIg1AHRab1nY~ zx7VyDS8{>M0|Y#j^Dh)z09Ra;RWx!yTFT4a0L+55L06VEChlVH-_HD4arlH!eba6! z*1}tcp&I4Ui(C%XTUq7}A4kn52DDQ)Y*9SzVqt`nXtbf-;UO-Dfcxol*EDAWhMfFt zd+F^Ds%h0p|A@kt7e1PV;Y%=k^}f3B-lio*!XQsUAT6ft`uKkCn=mC2bv6-U?r7cp z?eh_KD?Gmfu!aE)r$%`*Yd)$ucRJ5`ORipN$F#=EvkDoyI4w++p3sZzl~^3-?;8i~ z31guT9v=8eSiNYzy%kXJ;jI`)n&c$R?K{6nMCiEN+gg2IkLtC`;fYvtH<@c!ytVLD zFo}7>(pgo^N}tt0(M~{h#B|*%2XK~27w4?gJKwM=4l#xj;&Gs#w9=etxBRbf%$P-R zJoA_VAVNEW+({8(w~K!NecS)gZN=KYfW5?}ACJx%`%n~HIdQyQf*foe+_9#t?U)9l zFK<9`j*Zp$RGDxn{i<{~^KiYM2sob$7!@ObMo8?Y+en_W7ym)mwVww0}1Cb@Zpd6!)W}1YT8504qe(xq`-~HrC&q4_0l0i-{@65 z5NnDFxI+do!zQ=69*q*qA)^`~(yaUjIMEPHSD zY_)7=nP-LWcTq<3_fY9)^loPk^AanLW&|X z^3i4H9ttP3jQ}K*7Jn6ks4Ufvl)EX1D{*+Wp6*!N^BL0P^BCuViYJdjb^gn^$qy*# zG1?OgwsXFs177cF*jU)Pet!yrLrt&*po2qgI-&CiDK7gd50+qY4{{UepY|%=t?xY= zI#_9>sM$#nOipwrKI>m?E@Ceo-SAaJv>Tye7CNW%PEfHQ|Cg^0u}RlRMnl@QoP*Ng zoX2v3nW-5Z#eMkPW8wK*#c)e5Nd6^^P?Dez- zH?A^{jYb)pThmrcN|9X9zVywH1MC&GyVR(g21HzM_c)`7ttLua7uKbvpGGx9<>KMC!2`q z>Q5T^20bM(>$wC;>l3bB5#f5Cu)Nq>o9lz@Bz#nallZd2U`?{Bfd?I{$YED`dZrNW z=Er(obW7zeLc&<17W>+tqP7@Rm!-Dt_O~^${Jj2-MO{JHG=uCy{2!LRR&Ax9D=WnS zM$OS5d;Z>5Xg+sx{)P|s(8*{jW6&kyNhU1t?YOorMg|BvjK(eP*Zy%f8-2h)z1P8Vp=PGNItzv3$46!;ARB-qjf zYXquNzGot~$d8;j$(_{5uh<(=;9O04=$1d&2tTc{)oFMtcG#G1fIxSVQ}pnah|9eI zYLVL;(JC0c`{|VBH|rt!-qT&)Tl%#W%xO_Ppb^TSo4=+nP#N+iM#IiI8UKg^%`iZor@nJWS(AhWDVXuO#6-_A*%{5W%!Ue@| zS+;AdQtRQTG#aG_PIoBd*zSC(e74sR2|GEyzrHx(c&&PGnT(0LuxRWo8{gb1cLqtI zfua!Ugne_;^Nlebn_$y_zC}65Ch~cOmdn{J5oTMkWNT0}D3j9*Zq5V(6)u{A_o((* zgM~NP(e}AIl*5ZiYm`*bk-=^N4SZ>}r1GBSO?3P0s|OT5a86srNdJj3W`WN0EpAfN zOn+K;lGNv~q!AAty!YnX;ilN(?Q(dn1+1?yqU9j1!1Ij@F=0-!f$74Wjv6IaE2iPa zU53+DmLE&#^%;uOEw7ZDWJteSQkkpXX(qn2S@#Yjtr&9919r%?5eTBq=B7NFd4a)e z)FZ_bfJR7(kKzy2o2n9?A00QoqMsJhq8Y;E#V*@4$r_JFILl8cr0jb=OtJd-qc(D& z{iPVp#?>wqMUxxcfV4|Fzc69xnQOu-Tp1$PKgj=`d_*4NDwG2jO2dfLg}8J?JNK^h zyAm_>sFVJR{hrH&;LQ_p|MvSX^AOiHisCl}E$RS~yQ}qxE4TS{aY=KpAwy{)-fBLq zXI?gsh+qnc2kn4ldS>#?bqIISeQk#$!dr|IA}<<#2~k19&v&b2rblPa6pV$%-fbB# zKB^VVnPOeV*f;5qs13D2>`0c)jn3GK`yWMMb3gXrR@(pKN@rD#-3Pl7}y)nW8HWY}fq zrVz6oe8JNVl->04-5!=0OGZqQS@lbid8x4G;{B$Vitns~EzH*ahO&t^{5A{#bx42Y zw;%Ej3HXZYS)Vmh_V9}@wMCvxWI4<<9-s&(%WA8Go^K;UPMEhTgv}}TW#abmSHFJD z$Fz?s!+wC zcv7wTgU<~pdC@*y0&an$0KUzj?9p);c_;_&r$CfS5>v0K++ zL>f^Nip1lfbD`zidhPgKgfHJ!qgemF5ZUP#~z_!MJbl_Gi4+}TwEvf|6mG%*# z59aIgrZKi%09j){IQx^jft&Sdmd62W&y|^Qa8%anRz5e&=sW!Wq~zh{j%gOP>7-yE z(q49Kg$-9`^ifi*oh_;>rsuUNrza>J83OOxI`hvqX z*g|*5W1dVlefUw!q>qjM9T7e&JL%;2HVf0Z0o0(A{|deh$^OKeWi*zr%I31k8DI+~ zGUtY@$(5{GHeC1YJgynXzmD#FE<6s#4jD*9^Y8Mz!4Z(Fro}X29Ur(rVykQ5SS18b z;{A=nCGMRew_ULVxFfL%q~}gO!TO5j|8-kly-C(z%hmq%)rR;AWrnwb>MRoRJqU%; zXT++cZnmH-63*QtuK}~B^xn27MqT-TV#?FJIF;Es_MoH42U^3n9{P>nixrojiIJU6626GOf3Bx!B!Q>zQ3`B?-|9 zG5_x#N5l|ZF%NHPXZF_@Q9I;u&8eE@2MTsXh)Ni5k4#dXIFr4i9Xkdn0jg1p|BvS- z7Q#^#$2u^?QrVG>E#NTI@I00r_Byfm?D$w6Ub2G-JDG!$_@dspEJLi%01USpU~e18gTm`fj~;cyKIp92lFT#BbzxvJnvvqNH192}MS{yR?P2jBp zx4WkOEE6q6yzM*jh)h=QFQIHe9~K5IG6wQ0{+riCe$H!OJ^sKCaQ6Pm2T`u78x+H4i!<~V&Nh`^bu2ICAf6mwBUK;S%2lc$?C+Nt~Ff=RZrd_%|dUyi8o z@=yK)|Lcf$Fi!4CRfQK~A68EYQj}0n78nrfUTLK`0$bzPXMG3|7np*kfcYy68mUMF z=~&?A)dFnk^vm;!1LA=TbF69aY52Gb4-01pcJpKkw!d}fjt=GR;sTTrauWy*-|6t{ zA~)ja&iFU3pZl>l{_WFR64z`q0$dT~7)kn5yPaXR_ys#BzD{Om67;BA+F)4Isxml( z#*vj-C`;_WrBQ1P=PVR73CIoAGH@nqY&+OHIE!ylfmXuH{$29}Xv}l7FchK)edj90 zA(yL4uS(O0v1PPPL^hlJtyt(may>x1fsv}$nyU84ACWudUq)_yELriB7xRBi!n1+H zE&VLSH8{l1ZleT=w|cS@F}7Y=$=x!DYrZnVxUw{I>CCrAIB!6YqJ|G`x_B~72sB(^ za`kO6`y(0ka^ItzJ=V`c+p%cPLJ*h3*+aBsPm@rSJ^H@o+`kifRpgGNd3(cUGQ-D6#g(efp>y0 zGPzz8MW|3mw?5eW%GBdq6-UJl>{)LBT>#abo55-i7EM)-;v?WkTTD`ux*d`|e4Z|W zioqD!xb}bFU5dmtHK0HPkKd*>u}U3@y_5v|EWi|AK<#MAWa7pz{~Xd)UGtj)EtD{3 zlLisIkS#f_8FAh+ng=5X%`fj5jQGz}Yj9)y`&cyNjNtu0uKln}Or&iPqKFGB@ z@Fb@~9(-lA0R>^V?UkJW#{8at7xTOPu!<$FogyD3d{hqFC%2RK=O;>L@fG(1WM^74 z9QtotRr7nuAlYc+RaSY%(#@RxauJ0D~G$x5qx z-npck3KS>;PKlnz_`T^a-g=_P;d=rd^*vVOEvpatFK& zAhNM!okd?c3!dt0PnX^tp=I68Q8ms-*5;vu#{s!wHIY9wDC`G}=01IpnnoWfVoY(B z6XyB;?-AhHV?tg0@-AbF8W|FDc#Pg4oiSNj?1>I9w26A;GShXk!vQMs-Z`7EYm-ML zEKZ%;8n!8Fwpbk#}coH1T=rV>|@*{*5 zKf#Cr0YwBB*Qszb7_O+Q%_u-C8|MoqOWz{%BPhn<9OIq2r^|K-an)O*4-KJUuTy&N zpg}}EC$P5qNdL&W=0_W<^DonN8)eO9oBBSpQ}uDyF*V+!M@0BlH(O&~Ho_x4}e%-YrH}jt+QQP*WiwNNVB*lu!gFw15Bf1@wUtgURe03CaZfs2iF+qJl{Pf9@h?B-F z`(6ag&?Z7{Y%fJ&OoZ?_urrqs7KhG(9jkA}w&~~^XPo`D>TafoD#i4EG@g!&IOiiB zyT7)T4;!GLUMryZp3eIXcE``F73YoeG2Eyl!XXc?)+e%}7@0Y35()rlCE5I5q>@zY ztI1iuAARM~@K1f^H`<)>o4?)MF-Pa>*5k+>T|<9;5aJF6lR>18NV^UokBIzK)eR*z zr+dO6drgnNKjrwyHxIGhA%bt^G>^$wBmW1AE~W3mGd3bdRLo5y&x+!M8wMs+RUlVi z*w)_-&olc=zm@avvi38!Q-gKzx(>rrBS_s83e!eybX88m@AgBF0dU|~tH}Jomvd8! zuE+4;?U91E(2jZ>@X!2O^YfS}j47ve)5Xrd6y4Rsx;}GQ79go#F75wnNlCsQRTiT6 z=~xDAqc+u&|NA+V=W<=v1RO3f%SNlyXN~<~6H{Abw#`qdqx)l&jr+F<5=)ObSWMPS z><7=>YKkJHkr)R+G^Qx9T{89j4x4b_(ojs)X1m>v@3UHuHNLateJP6(QrvnvF?_Md z`%y7aa0P{BN*>#${kLBJw+GPlbgoBF7_LoEzuD}mlp&LkEJiu?Rs@O~A#UFpHa{lk z`B0L~9v?=no{9*Tf@mI~QO+oXHn!V*FLSg)fs(%Eu!73pvfk8|+jT<u;8~kr;#QaJhvEIcBOHXrh7-1a?V^C<7&z#f2x_y{e9QF9F@?+KLEx&OsafCB z+|HXSI+j_Za=CZgMPPt@D(2+j+mCSp!ANx@`XZ!&gel#>NVfGAKb&00+*Fp%M&u47 zZZaJPA}IHF6mIjFA#JB?qk zBv2gYXhRCL=RmxbYS_Q2AoA!sxW%LSc?9Waa2E9$>VXRo*P7zs5wc83=L-LNtq`QaQo1t>Fi*|BOhraAT6DA4fHnkXZu&}HO-B!W1dt-MJdMcDo^Gl5{3Dd~HM)Zy`@ffp{1Y%njvaS{-hJRDTnB8UUx;X?zzOPx zP6UFH*DMxUm+S%FT!FtBaoemD_APomlP77TV5VX+=#eV|JR|ww!UpETAu2p*&^gLk zGmNoizdPtzd#eH1Dsl9ri2qEF^SvJtWWEahuM*z(Yaf1wy}8f7+6j?;5KtBF4U`Y&SKb~OkmM*?X=bxvkW z*0*@8BLP|duDZrZ-`rP~5m1C-sF5k1an?Xk_1C)W8?j9;6w}pfen{dIoBoj9oE~o1 zJ+69HVE^1qhnC+=^V^1XcQ2_=@#2y*b8}KNS!bkXN=X`?eVL^zH8Kw#6;xwvv|)=N z>`RL^@=;Z)xSRfH?%}}fsUc1|a)JKGrM8)>&Q>U;DqAz3LpHP*S<9z(#hdBK9rW-s z-6T0rfpZ2sHFWUQb`^v=RfhhIub`TGa0)@+RQIRChbalKkD=UqkV_`@$Z3!D)sGF5 zXcIOM#OZKhmVEPn4^%~em~-E4Y?%gwBzelu_C#TLr#cBFmMO^i<`#-g=!|-9v-5%XNTFhIE8_5j)o(K)H z=HS6QQx10A{j)v1mz$jq{5}l^G(77OeX~Txqy&47v+!k1;i^Uni^6i_bKiXjjdMxK z!a6+Was3ARO9$#Y;VB&^*05K-*{zYJd6rt21&+Iu?G$KC?$3wJujC4DKiB>^I&rh3 zk`Beak6lIOc;*9GAF*d2x9RKzwvX#HaW~meiEsE#I_=$onBP{W_d#6l@di6 zx_QEv12p6c<(!^FHF%oxXYl(hY7!H1Lui@(AQHjnmzMMN%W~F2!4T+QGU1A{>CJRj ze-SB`iXm1O#+gL+*BsIV^c%m#4H0ckYm+n{Z5DJIwJi!+)xwFl!8aHG`Eak`dYey7-sE+KFqa=;v zs@_n3GIZQ|PCOs3SXuVQWoc~#U8e98TLv7&r1Y~io71)YG|tm{v<~eS5jA^oT zUSW=iTwx7Ph+_?Z-Wk!s!Af!cKZC5N^W&cL{c)C^Ula96~olfKNNkj6@ z^+ms)5s@-EdT^l@<(chA>u$9>`-PWWTiVMk?xFuvNRmqWOUsc?NaD|0rvtwf@FgJG%+TEmHKa)ASU zm_sIVS0)g>f1^sOkPH=EiPVdidd*Pi-p_$^J9{;LQYR|&jCe{X=^XE<_UkIzC#yBJ ziBSx%3>pEl$;Cp5U`}Yf~?7qRsKyJkdt8l+>r{3T-wKpLnW;WA>cJLLVnQ zgxvX!KRRgXdACoNEn7d8xD1j}9`p4FoM@QJ>^m);=m-%lw|r6|OW6^N%_Fpae7tw; zp4@}7GG%*tE2Am}M{M27bi7{EX9aua#7iZDahiByKx*d_v(OG2O((6j>ELQPHmHz^8nrw@`H{AL>Sj&yb39+%Lvh0~$~h~g)ZeJ98IJx6PEw~wA?1|~2m z+fPMBZFG@!kv*;271~|Vw|^sh5~-@wPkU_q)Lfir*Z%4LLFbt_Q@Wh ztWSfIjt~= zgc`94Gglw3*7LdBI65i_@9&Zf226drEUHvv>Ya-JOidMVg~JUnmOK6-k#XWJ|MM4|zai;w$W z(xo=(sOPpdgx60KZLYnhAVRHuIP{b1A!;g3tEwn{_K>VIDFWn;ay zW55$`a{EaAM)zwkpKy>9aj4UlCqJRLzwrMm`|@}w+qeBeQQ2GUOHqh0B5Oz#6-o9b zO9V9d<#nwF>U_x*gH_x=3(YvP{Ub)WZj zo!5Du*LfTVe$GTv`4&T?TP4-t_EPX|#ue|=HA)E*tYIey9&4v{)sMKxmz?B1LrMGe zfO*n{xakwis$M2;J#2k+uvW>d-ZkTHjE|b=SiKVCU(f`q2)d4S^^nCv>5xVLn)?g= zI!PvpjcMKzM9r&jv+fVe!vN9AzzaKSc7eywMn=XQXo_Q%KPQ}KFpO;s-w7nb8LsIZ z$QU=w*7!(3o|v4GGi5l*F01>YD@MP9UrWtZYsk1n$Lj=b0F=hTAYK43za|dNGcK>) zQ3}54VNrbD(Kx(W!F{21}xI=q3V5&2aND$xgHI1nd2 zVh@#K(1&I|+(3wm^s5@zHk@znBtDQ06^w6!elWiIMck58!`nHio#@u?9hd_Bxe4Q77NEXhCl36bwGsJ(@j7+W@)wJ=Q7 zS{+>>Q!r|>R6N0jvzrme&b2Aw-OXjRi&AF9o|M~kXxsWc8w}VwJB-|tzVw>mE>pew zuB)Z*CS>_9Cj|wru3n#!6?zTjJ#V-<>!{Z5+pl+uTRqRy=8W4-vFeSkK+VY zii=IHf|PU>8lJ*l3t4yHi|3?y@?27jBUg*eBh_UB2;?o@?(%SRAnvaahpUf|f8Cfc zKEC<(;!{>Z(e$EuPbO0@GTJVvBcJwBmY|`hkXLFbmu2Ad`H2() zclc7_Jg$77FC<2OS8b1d-`aK(TFU-S@l|vq@_@oTa*1kXf2%LMO2CNMbp4M0wipH5 zC&rbnN2F>xr9Na;A9@>i%U4WmdN|8jZA*KYb9S_@A!KCOT;}ixEas8Ky&_lNzrI04 zcP-V9I-DeB8^S=nO>^2eu)xhSV3R>_R!ZJX=jsHjb?M%d7;Jj?q7cn^z$O#*N!qJ^ zfn{19a`9K?*H7lcxZScNUiw2lw?5Xs%ehsSer5m38XJ#>tsLrg`eSx$)9IrXGWVeS z&B!2*&&|@G*jq1jK)ax2t{V&37!eiF$pJcM#nwOKF2oD_4H?{p1QbxU` z1)tn?N#=X$OZw1jkmxFTR1?h#<+@iXmkGi#f-)~+Uidgf=0knOn2WW|Y)vcL|M~$g zAG=i-i#1X9XB({rx~0wm~NR)8zC` z{j1#lE}zB+h$s8$qqNR0LkA>m^=8urGT0}#y;|z|b}OV@S7rQhehy~uYd@nSHhcZ{ zrkiwbp>83IkIqvJPNECd1NbtkX`%vnvMShp60Wnx1ZE4xGj=DP8LAE1xqmYLoF(@J zrPJwvi{T--=e+Es$55WMnEO&vLAxIY)jXg@#%DM($O9xP)Zz`GD5}u&9sTQrq%5Jf z41PfhesW|^n{mro@0w{egEr65_EmgdO6%7_G`doxnADqiHh%KcG3i}Y{WADmRlzMeeS zrCQozuT_+os=xiF(X?$OJB|v9YPRufb@NH%`@qZ*BJ>QJn)MXL9a_R^8Zz8T0)5iY zZmh>SK>G}u@tF4Bf%}?=KT)XCh;K2@+e=6b>e_t1g`st<1x;DdM`eQujcLXY3Q=P( z^O#aE!|*a@#5&i`O%DpXr6H0!0>Yq)DG5Kj$yR1s39wj-9lHLC5foGd4pdDnHYino zfb+|g#zTXQYI!IkVT|Z7s0BDpVL}5Lp2u}Ip(4Eq&!Z}!9Pr5bvXj9OCCMR>;CUwF zG$-Oss}_pfo+~NM2b9`Bac}=to+c<$a)NemkE&^p{q`L}11+oiHAGf(*{H$03_x`x z@GvV>ewTv7CQ_10?fwBhb?18aOL(ytP1w7Ejye%m2mkEzH+d8_!Y@Rf#0^>(uNOU3 zH2Xqy6PFUMeEY*ygrTg+P&*QMYMVi^CuJRF+F3P$;W~W}il}R(< zKjdnJgiaeKlTTQ`Zz`P#%T6D^#W=V;`!=g%uBTbjmG2E;|J%9Cn5lHkr9~eev7=Z= zSkOyU0jCCLzZ~;-Cm*l%U!Px|9qr{;r*+LHpO~$sW%N6BHS?r`9}PzdO-kVAL8mOk z6HDQV5SLlJOPxcwrQj!d{H-B+j)6Xy0_PkH$}LS{M*IRbM?H*=FYqhB0{AHWkh>g9znnFApX2%2W$);a5g1S4_aG5J3E!{6L;kji zCkBO&&&=V)1;Qh;p$ci~Pb}Fd&ZwWEH4EbLwd*57k-by^bD1oED7cRd#rMtMuCF(t zgl1VNW$wk1#~tLYy01wG;VEA2#1ped(N6mg$+8qsYn!pQ^8;_5${xerkt<%s>@xBb z3f>|iBY6HkSe_RIGk<{h%9qLX_%z|;IOt^~`IHtFa=)EHO4g>$Az!0e9Bysr?V?rl zLO>iIt>{tA%4Ax9sF@#uy*!eY##g_LXu(DB+}&m0727qA{O&QT!|xfwsgA+vCe?q|neO3Ja;y==h__+?_BnRCEj<-+LgB#P|^!tTtK%-|?Sv zMUn98(c|m!II<4$hf9?``*TLt1xBm53z+dy2&t;{p0Yu;6{s=(lCl4n^qSC|I~awO zB(6M@nmx|bt>rijX;nE|MR~~A6=OF%WYz3n$fA$QOA{McpDx}z$O%`gsn-KFoA-96 zVNoL=#w(mfwDYhk&Tofu3JaqGRE7sohF7{NhyUu{8y?WmE|4igWh3)cn4g=Ou7AR< zT0hU^Di?$fC#ej5?it>dxa3E3`|p?rg7Aomn70Rpbcm@|CxjmUj-|s?Hm?gkxcU>4 z143#rg1IA6d(ozVjKUZ)kE2D$Y{Iv85-|6VLomvoscQ}nHt=MdD8X{DYTA zm8KyhQOFVG4_+2-W=i9!AUpy1HiOyF&Z+v?v#BrZ=D}56QC9ZE&~xR&Rl%YlVQ+`# zaOafdJz6ki!np6H@YzBl07#C&6@@{wYoI-#zwztnFr_b{UirNZ3Bt=7L+eKqVc&3l z_ld%eV7v3^g?4U4Y*W)yiNgk8;j3xqSVyV;2Y{Wa^Xw%(2I~_^9NrG0gBCs2-#C6) z$}iI3k~7Iz_Yb1f_PZnuELGdj4v)2wu|>$kx@wbv6>HwWq&>68x6b_@WEdDEXUV>g zI(4q|ONWTSI8TS(K-)MYPhCT=bq`^4li3NQ^X1-EUJleH-wGgGa5H7V58613Cx56%k*K}f3wPYB=_4Cna-snEA zy0=_+<>x!{qdAu|rLRYed`Rfjf$b>5cNI%q*7YPj_Vbfv;f6#z=n;K;%~|}&vPDm_ z8t4Pe5s*zIQvNkXE}yc5{I9aDfoAk${z(>>e@0@tp& z!H(Z%e_vSmFh)*y4M;LC9($8Qe+?t@;-8y-=F4Gjpo=A9F+Q>7TED|uh1sZyNuTWR zzXboz4S#ygg3SC89md#b$b@(KBvZq$=eqs+&)sN>z%(~Xzu}Ev>%}RDvr2skooa2p zYnq^7%)S;P`6w<&xw`Kki<~_n;{9vN`ng>JFP>xe)NDWisrjsnt1EK_i2}MONldjK zGrh@Ff!^QG1>d*w0N?MSvI8JN7&ZyjF^W1ioPpy>tZZ$y{{=EzR@hnwS5YYdq*d%4 z1VS@Lft!cX6QcUlCfrIY8?vu>H+Fhu@G&-ab`Ha|qHl&50KLKkP#d&{e?3w6h}688 zdcURIW|Mox@@xxiPLtZR9N%#15Kt!lU9(xo4RVBp@z^{spk`7f8JBjf3g2(+ssvbG z{{+XX3DvV!O|T{u3*hTon6nQ*Szfo@ie3a%PO`#nOV8Php;m8lWI!5FbFaL2smaSS zQcuA)94#4VKIml;sRzCyE7KW^>AqO@cbNpqV(B98x)Q%*oe{yBwpBBNYlKUJPnO@o z%79-qjfp)L^LAb++9Sva4)FzzNqZfAx(Uh--`DNolV#Wm>!KKayQ(`0HM84o>~VXm zqct5SMngW;xZ_^@RGBn5?NUU5`m6Ihx8t63fE`LH6}FU7yXRZ+J}vDLK{W3_$Si(~ z<`qgp-Gmxae8ttK_Z>|*l~f>hp9_+aw^)rp$63qcMNG}L7lqH!J**7jE8FV zH*t>*A!pNKE>Ye6J?dPq{dK9x80_aft}(hY*jyl6gfz?$luub-Z5-0i2{1WUMRa{Q z{dY^%iN!~_6^m3&`gjI0cKG+4DbF2SiAiAN*XwKCgNet$F}DNmxp7sBL}QPkqhM|6 zwJFC=+wV1k$ixIwr?QAKz)abDeOS>FVj&oOWK%dDNSbppXnBHzNow#$Ui0GwH@sSFs$q=(pgab;3n?Y%UovcJPaXYoT78(Ez@3 z$N##E#RF`uJxYe)3^Gef9&6?6TymXq2)wyJX8PS8zm9Z{DSIsU?%{IzOMs;JqGGvu z4G_0w70Z0m!q(YNQr$QZI?W>GVlmawf~x%T8IMG_CJ|t17W=P28A;uqb>2Qi!FdvZ zhA-YI?)bvbu)J)-6~z_bg>XNbQ`SvRQa^X>R*UV4SRjO>9VU}NNUfv<;WqsF2p&x^ zNWN`@M2}-xgwCY5`nf!V=%Z6xpbTx8uB?q7NpR#L@p3FfTpsw$8)uC@vBSr~G%{+Z zfiRsiK3;H?y_XrRDR3XWC$^FDi3!O)<6{EZ*wUE6I_HS!TQ03CY*wNi;(idsg5LFeGtAqROxG(IXlSBiu`gp}N zmeHt>Ch`W1TM_t!i091TUfMmN2c%|guZk_;PL)|%s<6W^fk(FUV)cT+tEw+PnwhWw zTxj19i(vde0Dt`6F|oXA(+5)dCvr|d=9$Hh1@uNeBU+)$Hw}zYNEC;kUo&5y6}Bnu zFp-T6BTQMfHEzSbkL3~-Nx1S+Ta=*9iJW_dJy%9V$qnK;R46k{&knCo2`YozVcJCw zx?AnVV9n#IABwHtbRs2qLYRk5+f=)v+xKLi4qSfg1z05Z-(>eLP5f~MM4kb*S`uqy zB{@cJ!yIvNOv}-M=uJUi@EHR>aDxwV@CT1XzoDb#p3{!h zM^zKqfCf*Zd?L@|1BX{zjbvey$~vSko;*o$kOJtY54J0See|g7hJ^HPALsKl4sA>X z>}HDO-}SPVR#tIRs#E-Y+FH3{uVLQ@(VDsG*(#oNa?f9jWkt%EJ5EM-A&`$Y>Na6} z&B5e+7OW;5QCt<%Fb$dGuck3{#LH(?*35}Om(Zh#Jx18YTcZ2tiV_uy!GvrMFD(QU z$0gZ$@teU@vXwwX{0#HA+vn)x*0}9d9P1Dl`D4nSQ4U-vM#SG}A4Vk?7oV28A_oT8jvGcPQTeSl5}k6I=%vuY54pBEl7^`aZb^Z=(hjDnF{JgFKHTN7XH zD3fS@IP}9%+L$|{Q>vsncM5T_W}RMUk$Qe*_Jp0w=X@Vwx3xY_ESEUMAn_i6s%Hy{ zN8@L7NGFS_K3eHZ0$vxHU{a}(069ZAg-fli=Smg*!uvQQwYRmUY*I=>ej4)VDJN9E zvlRODIbf&LeK?7MYZs@92L#4sshNXC8vQTP`L^AG%zOou17a2fw{?tVqZOq`EY#{~ zD^5K==OIDkPuOOpdaA)X9dj62ysW)+mb|M<)xhn#Xi@#U4E-(LLNpK-c<5Mw(4n9V z%SPE92Q0hG7Jsy!n~Eg|)5=%ujRWVmd_irD5{Js#VnfUtr-*lHoPw9==!QI)AkWbV z!{zI1f#0*+j;`er9G{6Gnd6rV6yc?;GJ}^Q(Y`Oy%)z_?=2g?Z!d>zZ9uzQ`zmvYe zacr7$`II8~PaVst2dGo;i6}}%83_Q|>5hXGerze|0h&8OLQO(LLJODLsWbB2A5hk< zUEgVDuUlpMn?OkUC8{_9S&*c14I-mItu+oko5|(INowCPyTpo6{L)4X9FQRu{a*(@ z;$BNOQ_F5!-aCO*BNjU37xhOW<#7)b&l#907W|k*I~kX>F+r?ZU>$Nc2&!yUudu_ zSYvh>E+%ZAWtwe+EE100EnHMy;9|MFu)cuebI?B2+*G!>BQx*bc}y_7yNQ%sEV*%&ysLC9ElC)P)F@Z@tE__H{=MENW-$St& zBM7^wj`_8DQ@ovYEt19^&sBP93S@|WmGpm zj7%gbJ4VPJYSdlWS+PLmnSR;%`1Whf=gSd0pY>n+`f>^*CT}zz&f7=(!Yq1aa%VW2 z%57G;fymKMuO3$>z?9!hScRREH`+n`u}saHFGkLP&DOCP0fa^iaZ9su68p`#yO)3$~ixbdWyBo!(Z3Ch&k`fb#>a$6l6FM>h=h3gk?vmUslK5XK zSCICAus1)khZSxMCYXI5eXeETWm5adA!GE&-OpGO{Ksc%cH2DuIaB?-5775umj z9$j56sre(^caGg5`D3~N&TpPUR==WFZg^)AlKG=!@)q59twF2)ANAV|4yYtvLpV&WU1^2$4pj#6Y(!y}TDqn%er za;^jEA;14f*OV5yQqZx#b1&sgNBf*GqYyqDNZ`MwWEKz$9%Aup|CV^&AQ@xB=KZWq z{7J}85dC=of(V(XTxZ`r8~vv6`#T7clm9{6=2bupemfwQ)twR~TFxD60^X(!--9R3|8r=~rRD z3TZP!0WSe-Gq3BW7n*tX!An(FaHjOVdlPRSK-hz-WlQ3I=j7SI8eON1LH)Rk#!vTf zY<_uh-E}64KtTlC$6*{uxA=-`xr*xdr3oQ~Y3+pyqw?R&CGrI=V6%9Rd3dJsBXP4&EqZ%%kBm6?Jj4S9PO^FuX}RhT)Z1I>XmY|kx`ABm&L)2L5 z-zpkrt8K(L_QKO&!qIhzY?n#)6ThBpE;yIS=8I?hCy@6N8hIS&K1&Om*Auca9LVgE za)g4yLe^#{;L9FHb;cHiPB&w_E}Wd2nYlt}2qKWd;vO#DQ6Kc8o$%%{##sEW0`X@) zg9sDr2$@3gG3F4w?OlplIBwb6Tpk_++EoRBj4qeiR-sFdjp0TviT#uLB^LV!z;IJ1 zKpgd^`qkYt`IB}?`S0K9+TW_m6olT4_sL;us5A-OCL^J}+6cpiP%kbe*}nx@12 zP+xo8k>_B$I|->jLKH=D${&J0q`wvl)LTv;&UoFqK2g%3*%otPmz=2A_F4b1?>vfx z?XTH%%5dtwSldY#o^>@g>Sx9qGoUh@E4|F-rJQhBR_6Roj)JXcc87$Fx-$#WqDcJ9 zyU(@z5v{e=z4zZ?BSGs_jyBc(rAdmu+Hk}iUvlmX=!HiF17%`o)WF!7%@kEK`i@)F z1;H8^F3+g9c2-iq+UnPi5zGM!YJ~=66DAPtoZcUPpa%dBwHd{{Lt+JE0epM$!)V2o z7J^t`V}{$i?VK#Z+}*YjRM6*^q@l`{)^0JorfmrhiEXh^q=w4f_==!2(`D8X_xsJg z!kJ%AWzPq&a&cxnFcIm|nmN1$u@9XLGpJPycQKXM+EB6e?5mqvnj~rMloKc-8ou8z8TDcQ@-jm?N}y8@?_8K3{} z49UgDg09^;Gannf@3)vjeIl8*1Qc?tNDcy4i()!m1!D0B18*b_T?S^5yn%>q{Aw>K$Hic za80e;%DnEqd>!tyQ-3O|ISA7FUGyO7_s)5FQfU|>>hR;aaFcLsoG|H@>vhm%?&Fj) z9%l%eJ*1~SQXSkDCZ>El zztcJ)wlqdjQXq4&gzZ$?deGUKIt#>gwoQ--N$kza=dLG+dShqrdx||&QAJ4PffeW$ z^sU9!cSrRTAQZ7}6)Il3UQd>Pl7fVR`UTB+_l;jA*?Xykc?XU&8wneS$GNF@fEPP= zy)v#rw07aIxF-&>2OWGx-BV6$vM-dTEoNaPXhvqS5ukm(vAshdZDMWonslslTvm*+ zp%O3u%_7?TjOEXjs#FdT%9O?s{Gt&q=6Ki$y9bu37@QBjQvv6OGs}@Mi1kt@yFaQw zn2zI}zMi4zAZ(Km3N_k32acYy*P4VeJ9*+(QOBY#oY-f#-_q`-8%9@Ty=)a_ zVPD#`tzb_nz1h(OX|aI%ZHw6r^#>5n51#XJXqL7>>d&IW)YXUZz7;4n_c;@C3WJ;8 za=JJ38&O)*eQX$0=6x(UanQQ@4nP+VJS80u=yPS_n=FNYheOW@=P9*QA(%5$4`y*o zV9y_}I}vJB>wWaqG$PMYC8>hPlpal8x%|An1yFE{}WtYr>2}0>08A& zL2&wqs|mZkcrLE5>=d(j0W`&|hR@aD3S#%2IJu5vmFq{NX8#13zfW3jD~TT# c9^;8N=KU0g9yR+wz`uKU9x4>xHh%s803K#qdH?_b diff --git a/src/connector/grafana/tdengine/dist/README.md b/src/connector/grafana/tdengine/dist/README.md deleted file mode 100644 index 3012a54e9f..0000000000 --- a/src/connector/grafana/tdengine/dist/README.md +++ /dev/null @@ -1,96 +0,0 @@ -TDengine Datasource - build by Taosdata Inc. www.taosdata.com - -TDengine backend server implement 2 urls: - - * `/heartbeat` return 200 ok. Used for "Test connection" on the datasource config page. - * `/query` return data based on input sqls. - -## Installation - -To install this plugin: -Copy the data source you want to /var/lib/grafana/plugins/. Then restart grafana-server. The new data source should now be available in the data source type dropdown in the Add Data Source View. - -``` -cp -r /connector/grafana/tdengine /var/lib/grafana/plugins/ -sudo service grafana-server restart -``` - -### Query API - -Example request -``` javascript -[{ - "refId": "A", - "alias": "taosd-memory", - "sql": "select avg(mem_taosd) from sys.dn where ts > now-5m and ts < now interval(500a)" -}, -{ - "refId": "B", - "alias": "system-memory", - "sql": "select avg(mem_system) from sys.dn where ts > now-5m and ts < now interval(500a)" -}] -``` - -Example response -``` javascript -[{ - "datapoints": [ - [206.488281, 1538137825000], - [206.488281, 1538137855000], - [206.488281, 1538137885500], - [210.609375, 1538137915500], - [210.867188, 1538137945500] - ], - "refId": "A", - "target": "taosd-memory" -}, -{ - "datapoints": [ - [2910.218750, 1538137825000], - [2912.265625, 1538137855000], - [2912.437500, 1538137885500], - [2916.644531, 1538137915500], - [2917.066406, 1538137945500] - ], - "refId": "B", - "target": "system-memory" -}] -``` - -### Heartbeat API - -Example request -``` javascript - Get request /heartbeat -``` - -Example response -``` javascript -{ - "message": "Grafana server receive a quest from you!" -} -``` - -### Dev setup - -This plugin requires node 6.10.0 - -``` javascript - -npm install -g yarn -yarn install -npm run build - -``` - -### Import Dashboard - -after login `http://localhost:3000 `, then you can import the tdengine demo dashboard to monitor the system metrics. - -you can import the `dashboard/tdengine-grafana.json`: - -![import_dashboard](dashboard/import_dashboard.png) - -after finished import: - -![import_dashboard](dashboard/tdengine_dashboard.png) diff --git a/src/connector/grafana/tdengine/dist/css/query-editor.css b/src/connector/grafana/tdengine/dist/css/query-editor.css deleted file mode 100644 index 3b678b9f36..0000000000 --- a/src/connector/grafana/tdengine/dist/css/query-editor.css +++ /dev/null @@ -1,3 +0,0 @@ -.generic-datasource-query-row .query-keyword { - width: 75px; -} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/dist/dashboard/import_dashboard.png b/src/connector/grafana/tdengine/dist/dashboard/import_dashboard.png deleted file mode 100644 index be3704cb72d6c2614614852bfef17147ce49d061..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100470 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 now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": "120,240", - "timeFrom": null, - "timeShift": null, - "title": "req select", - "type": "singlestat", - "valueFontSize": "150%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "total" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": true, - "colors": [ - "#299c46", - "rgba(237, 129, 40, 0.89)", - "#d44a3a" - ], - "datasource": "TDengine", - "description": "total insert request per minute for last hour", - "format": "none", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "gridPos": { - "h": 6, - "w": 12, - "x": 12, - "y": 0 - }, - "id": 6, - "interval": null, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "options": {}, - "postfix": "次数/min", - "postfixFontSize": "20%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": true, - "ymax": null, - "ymin": null - }, - "tableColumn": "", - "targets": [ - { - "alias": "req_insert", - "refId": "A", - "sql": "select sum(req_insert) from log.dn where ts >= now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": "110,240", - "timeFrom": null, - "timeShift": null, - "title": "req insert", - "type": "singlestat", - "valueFontSize": "150%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "total" - }, - { - "datasource": "TDengine", - "description": "taosd max memery last 10 minutes", - "gridPos": { - "h": 6, - "w": 8, - "x": 0, - "y": 6 - }, - "id": 12, - "options": { - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "mappings": [], - "max": 4096, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - }, - { - "color": "#EAB839", - "value": 2048 - } - ], - "unit": "decmbytes" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "mem_taosd", - "refId": "A", - "sql": "select max(mem_taosd) from log.dn where ts >= now -10m and ts < now", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "taosd memery", - "type": "gauge" - }, - { - "datasource": "TDengine", - "description": "max System Memory last 1 hour", - "gridPos": { - "h": 6, - "w": 8, - "x": 8, - "y": 6 - }, - "id": 10, - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "mappings": [], - "max": 4, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 60 - }, - { - "color": "dark-red", - "value": 80 - } - ], - "title": "", - "unit": "decmbytes" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "mem_system", - "refId": "A", - "sql": "select max(mem_system) from log.dn where ts >= now -10h and ts < now", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "system memory", - "type": "gauge" - }, - { - "datasource": "TDengine", - "description": "avg band speed last one minute", - "gridPos": { - "h": 6, - "w": 8, - "x": 16, - "y": 6 - }, - "id": 14, - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "mappings": [], - "max": 8192, - "min": 0, - "thresholds": [ - { - "color": "green", - "value": null - }, - { - "color": "#EAB839", - "value": 4916 - }, - { - "color": "red", - "value": 6554 - } - ], - "unit": "Kbits" - }, - "override": {}, - "values": false - }, - "orientation": "auto", - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "6.4.3", - "targets": [ - { - "alias": "band_speed", - "refId": "A", - "sql": "select avg(band_speed) from log.dn where ts >= now-1h and ts < now interval(1m)", - "target": "select metric", - "type": "timeserie" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "band speed", - "type": "gauge" - }, - { - "aliasColors": {}, - "bars": false, - "cacheTimeout": null, - "dashLength": 10, - "dashes": false, - "datasource": "TDengine", - "description": "monitor system cpu", - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 11, - "w": 12, - "x": 0, - "y": 12 - }, - "hideTimeOverride": true, - "id": 2, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": { - "dataLinks": [] - }, - "percentage": false, - "pluginVersion": "6.4.3", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "cpu_system11", - "hide": false, - "refId": "A", - "sql": "select avg(cpu_system) from log.dn where ts >= now-1h and ts < now interval(1s)", - "target": "select metric", - "type": "timeserie" - }, - { - "alias": "cpu_taosd", - "hide": false, - "refId": "B", - "sql": "select avg(cpu_taosd) from log.dn where ts >= now-1h and ts < now interval(1s)", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": [], - "timeFrom": "1h", - "timeRegions": [], - "timeShift": "30s", - "title": "cpu_system", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": null, - "format": "percent", - "label": "使用占比", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "TDengine", - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 11, - "w": 12, - "x": 12, - "y": 12 - }, - "id": 18, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", - "options": { - "dataLinks": [] - }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "", - "refId": "A", - "sql": "select avg(disk_used) disk_used from log.dn where ts >= $from and ts < $to interval(1s) group by ipaddr", - "target": "select metric", - "type": "timeserie" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "avg_disk_used", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "decgbytes", - "label": "", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - } - ], - "refresh": "5s", - "schemaVersion": 20, - "style": "dark", - "tags": [], - "templating": { - "list": [] - }, - "time": { - "from": "now-1h", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ] - }, - "timezone": "", - "title": "TDengine", - "uid": "FE-vpe0Wk", - "version": 1 -} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/dist/dashboard/tdengine_dashboard.png b/src/connector/grafana/tdengine/dist/dashboard/tdengine_dashboard.png deleted file mode 100644 index a4b6a7669a47aeb44734b1c8e3241e9439c19ab7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 177357 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 diff --git a/src/connector/grafana/tdengine/dist/datasource.js b/src/connector/grafana/tdengine/dist/datasource.js deleted file mode 100644 index 8190394f93..0000000000 --- a/src/connector/grafana/tdengine/dist/datasource.js +++ /dev/null @@ -1,156 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GenericDatasource = undefined; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var GenericDatasource = exports.GenericDatasource = function () { - function GenericDatasource(instanceSettings, $q, backendSrv, templateSrv) { - _classCallCheck(this, GenericDatasource); - - this.type = instanceSettings.type; - this.url = instanceSettings.url; - this.name = instanceSettings.name; - this.q = $q; - this.backendSrv = backendSrv; - this.templateSrv = templateSrv; - this.headers = { 'Content-Type': 'application/json' }; - this.headers.Authorization = this.getAuthorization(instanceSettings.jsonData); - } - - _createClass(GenericDatasource, [{ - key: 'query', - value: function query(options) { - var targets = this.buildQueryParameters(options); - - if (targets.length <= 0) { - return this.q.when({ data: [] }); - } - - return this.doRequest({ - url: this.url + '/grafana/query', - data: targets, - method: 'POST' - }); - } - }, { - key: 'testDatasource', - value: function testDatasource() { - return this.doRequest({ - url: this.url + '/grafana/heartbeat', - method: 'GET' - }).then(function (response) { - if (response.status === 200) { - return { status: "success", message: "TDengine Data source is working", title: "Success" }; - } - }); - } - }, { - key: 'doRequest', - value: function doRequest(options) { - options.headers = this.headers; - - return this.backendSrv.datasourceRequest(options); - } - }, { - key: 'buildQueryParameters', - value: function buildQueryParameters(options) { - var _this = this; - - var targets = _lodash2.default.map(options.targets, function (target) { - return { - refId: target.refId, - alias: _this.generateAlias(options, target), - sql: _this.generateSql(options, target) - }; - }); - - return targets; - } - }, { - key: 'encode', - value: function encode(input) { - var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - var output = ""; - var chr1, chr2, chr3, enc1, enc2, enc3, enc4; - var i = 0; - while (i < input.length) { - chr1 = input.charCodeAt(i++); - chr2 = input.charCodeAt(i++); - chr3 = input.charCodeAt(i++); - enc1 = chr1 >> 2; - enc2 = (chr1 & 3) << 4 | chr2 >> 4; - enc3 = (chr2 & 15) << 2 | chr3 >> 6; - enc4 = chr3 & 63; - if (isNaN(chr2)) { - enc3 = enc4 = 64; - } else if (isNaN(chr3)) { - enc4 = 64; - } - output = output + _keyStr.charAt(enc1) + _keyStr.charAt(enc2) + _keyStr.charAt(enc3) + _keyStr.charAt(enc4); - } - - return output; - } - }, { - key: 'getAuthorization', - value: function getAuthorization(jsonData) { - jsonData = jsonData || {}; - var defaultUser = jsonData.user || "root"; - var defaultPassword = jsonData.password || "taosdata"; - - return "Basic " + this.encode(defaultUser + ":" + defaultPassword); - } - }, { - key: 'generateAlias', - value: function generateAlias(options, target) { - var alias = target.alias || ""; - alias = this.templateSrv.replace(alias, options.scopedVars, 'csv'); - return alias; - } - }, { - key: 'generateSql', - value: function generateSql(options, target) { - var sql = target.sql; - if (sql == null || sql == "") { - return sql; - } - - var queryStart = "now-1h"; - if (options != null && options.range != null && options.range.from != null) { - queryStart = options.range.from.toISOString(); - } - - var queryEnd = "now"; - if (options != null && options.range != null && options.range.to != null) { - queryEnd = options.range.to.toISOString(); - } - var intervalMs = options.intervalMs || "20000"; - - intervalMs += "a"; - sql = sql.replace(/^\s+|\s+$/gm, ''); - sql = sql.replace("$from", "'" + queryStart + "'"); - sql = sql.replace("$begin", "'" + queryStart + "'"); - sql = sql.replace("$to", "'" + queryEnd + "'"); - sql = sql.replace("$end", "'" + queryEnd + "'"); - sql = sql.replace("$interval", intervalMs); - - sql = this.templateSrv.replace(sql, options.scopedVars, 'csv'); - return sql; - } - }]); - - return GenericDatasource; -}(); -//# sourceMappingURL=datasource.js.map diff --git a/src/connector/grafana/tdengine/dist/datasource.js.map b/src/connector/grafana/tdengine/dist/datasource.js.map deleted file mode 100644 index 0065a5ae0e..0000000000 --- a/src/connector/grafana/tdengine/dist/datasource.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/datasource.js"],"names":["GenericDatasource","instanceSettings","$q","backendSrv","templateSrv","type","url","name","q","headers","Authorization","getAuthorization","jsonData","options","targets","buildQueryParameters","length","when","data","doRequest","method","then","response","status","message","title","datasourceRequest","_","map","refId","target","alias","generateAlias","sql","generateSql","input","_keyStr","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","i","charCodeAt","isNaN","charAt","defaultUser","user","defaultPassword","password","encode","replace","scopedVars","queryStart","range","from","toISOString","queryEnd","to","intervalMs"],"mappings":"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","file":"datasource.js","sourcesContent":["import _ from \"lodash\";\n\nexport class GenericDatasource {\n\n constructor(instanceSettings, $q, backendSrv, templateSrv) {\n this.type = instanceSettings.type;\n this.url = instanceSettings.url;\n this.name = instanceSettings.name;\n this.q = $q;\n this.backendSrv = backendSrv;\n this.templateSrv = templateSrv;\n this.headers = {'Content-Type': 'application/json'};\n this.headers.Authorization = this.getAuthorization(instanceSettings.jsonData);\n }\n\n query(options) {\n var targets = this.buildQueryParameters(options);\n\n if (targets.length <= 0) {\n return this.q.when({data: []});\n }\n\n return this.doRequest({\n url: this.url + '/grafana/query',\n data: targets,\n method: 'POST'\n });\n }\n\n testDatasource() {\n return this.doRequest({\n url: this.url + '/grafana/heartbeat',\n method: 'GET',\n }).then(response => {\n if (response.status === 200) {\n return { status: \"success\", message: \"TDengine Data source is working\", title: \"Success\" };\n }\n });\n }\n\n doRequest(options) {\n options.headers = this.headers;\n\n return this.backendSrv.datasourceRequest(options);\n }\n\n buildQueryParameters(options) {\n\n var targets = _.map(options.targets, target => {\n return {\n refId: target.refId,\n alias: this.generateAlias(options, target),\n sql: this.generateSql(options, target)\n };\n });\n\n return targets;\n }\n\n encode(input) {\n var _keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var output = \"\";\n var chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n var i = 0;\n while (i < input.length) {\n chr1 = input.charCodeAt(i++);\n chr2 = input.charCodeAt(i++);\n chr3 = input.charCodeAt(i++);\n enc1 = chr1 >> 2;\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n enc4 = chr3 & 63;\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n output = output + _keyStr.charAt(enc1) + _keyStr.charAt(enc2) + _keyStr.charAt(enc3) + _keyStr.charAt(enc4);\n }\n\n return output;\n }\n\n getAuthorization(jsonData){\n jsonData = jsonData || {};\n var defaultUser = jsonData.user || \"root\";\n var defaultPassword = jsonData.password || \"taosdata\";\n\n return \"Basic \" + this.encode(defaultUser + \":\" + defaultPassword);\n }\n\n generateAlias(options, target){\n var alias = target.alias || \"\";\n alias = this.templateSrv.replace(alias, options.scopedVars, 'csv');\n return alias;\n }\n\n generateSql(options, target) {\n var sql = target.sql;\n if (sql == null || sql == \"\"){\n return sql;\n }\n\n var queryStart = \"now-1h\";\n if (options != null && options.range != null && options.range.from != null){\n queryStart = options.range.from.toISOString();\n }\n\n var queryEnd = \"now\";\n if (options != null && options.range != null && options.range.to != null){\n queryEnd = options.range.to.toISOString();\n }\n var intervalMs = options.intervalMs || \"20000\";\n\n intervalMs += \"a\";\n sql = sql.replace(/^\\s+|\\s+$/gm, '');\n sql = sql.replace(\"$from\", \"'\" + queryStart + \"'\");\n sql = sql.replace(\"$begin\", \"'\" + queryStart + \"'\");\n sql = sql.replace(\"$to\", \"'\" + queryEnd + \"'\");\n sql = sql.replace(\"$end\", \"'\" + queryEnd + \"'\");\n sql = sql.replace(\"$interval\", intervalMs);\n\n sql = this.templateSrv.replace(sql, options.scopedVars, 'csv');\n return sql;\n }\n\n}"]} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/dist/img/taosdata_logo.png b/src/connector/grafana/tdengine/dist/img/taosdata_logo.png deleted file mode 100644 index 88d3bacd09593f2735f279714f4a534624042838..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3211 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 diff --git a/src/connector/grafana/tdengine/dist/module.js b/src/connector/grafana/tdengine/dist/module.js deleted file mode 100644 index 3e88e404a8..0000000000 --- a/src/connector/grafana/tdengine/dist/module.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.AnnotationsQueryCtrl = exports.QueryOptionsCtrl = exports.ConfigCtrl = exports.QueryCtrl = exports.Datasource = undefined; - -var _datasource = require('./datasource'); - -var _query_ctrl = require('./query_ctrl'); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var GenericConfigCtrl = function GenericConfigCtrl() { - _classCallCheck(this, GenericConfigCtrl); -}; - -GenericConfigCtrl.templateUrl = 'partials/config.html'; - -var GenericQueryOptionsCtrl = function GenericQueryOptionsCtrl() { - _classCallCheck(this, GenericQueryOptionsCtrl); -}; - -GenericQueryOptionsCtrl.templateUrl = 'partials/query.options.html'; - -var GenericAnnotationsQueryCtrl = function GenericAnnotationsQueryCtrl() { - _classCallCheck(this, GenericAnnotationsQueryCtrl); -}; - -GenericAnnotationsQueryCtrl.templateUrl = 'partials/annotations.editor.html'; - -exports.Datasource = _datasource.GenericDatasource; -exports.QueryCtrl = _query_ctrl.GenericDatasourceQueryCtrl; -exports.ConfigCtrl = GenericConfigCtrl; -exports.QueryOptionsCtrl = GenericQueryOptionsCtrl; -exports.AnnotationsQueryCtrl = GenericAnnotationsQueryCtrl; -//# sourceMappingURL=module.js.map diff --git a/src/connector/grafana/tdengine/dist/module.js.map b/src/connector/grafana/tdengine/dist/module.js.map deleted file mode 100644 index c6d4dfce1c..0000000000 --- a/src/connector/grafana/tdengine/dist/module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/module.js"],"names":["GenericConfigCtrl","templateUrl","GenericQueryOptionsCtrl","GenericAnnotationsQueryCtrl","Datasource","GenericDatasource","QueryCtrl","GenericDatasourceQueryCtrl","ConfigCtrl","QueryOptionsCtrl","AnnotationsQueryCtrl"],"mappings":";;;;;;;AAAA;;AACA;;;;IAEMA,iB;;;;AACNA,kBAAkBC,WAAlB,GAAgC,sBAAhC;;IAEMC,uB;;;;AACNA,wBAAwBD,WAAxB,GAAsC,6BAAtC;;IAEME,2B;;;;AACNA,4BAA4BF,WAA5B,GAA0C,kCAA1C;;QAGuBG,U,GAArBC,6B;QAC8BC,S,GAA9BC,sC;QACqBC,U,GAArBR,iB;QAC2BS,gB,GAA3BP,uB;QAC+BQ,oB,GAA/BP,2B","file":"module.js","sourcesContent":["import {GenericDatasource} from './datasource';\nimport {GenericDatasourceQueryCtrl} from './query_ctrl';\n\nclass GenericConfigCtrl {}\nGenericConfigCtrl.templateUrl = 'partials/config.html';\n\nclass GenericQueryOptionsCtrl {}\nGenericQueryOptionsCtrl.templateUrl = 'partials/query.options.html';\n\nclass GenericAnnotationsQueryCtrl {}\nGenericAnnotationsQueryCtrl.templateUrl = 'partials/annotations.editor.html'\n\nexport {\n GenericDatasource as Datasource,\n GenericDatasourceQueryCtrl as QueryCtrl,\n GenericConfigCtrl as ConfigCtrl,\n GenericQueryOptionsCtrl as QueryOptionsCtrl,\n GenericAnnotationsQueryCtrl as AnnotationsQueryCtrl\n};\n"]} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/dist/partials/config.html b/src/connector/grafana/tdengine/dist/partials/config.html deleted file mode 100644 index f12eb86354..0000000000 --- a/src/connector/grafana/tdengine/dist/partials/config.html +++ /dev/null @@ -1,19 +0,0 @@ -

TDengine Connection

- -
-
- Host - -
- -
-
- User - -
-
- Password - -
-
-
\ No newline at end of file diff --git a/src/connector/grafana/tdengine/dist/partials/query.editor.html b/src/connector/grafana/tdengine/dist/partials/query.editor.html deleted file mode 100644 index 4fd209d394..0000000000 --- a/src/connector/grafana/tdengine/dist/partials/query.editor.html +++ /dev/null @@ -1,58 +0,0 @@ - - -
-
- - -
-
- -
-
-
- - -
-
-
- -
-
- -
-
- -
-
{{ctrl.lastGenerateSQL}}
-
- -
-
Use any SQL that can return Resultset such as:
-- [[timestamp1, value1], [timestamp2, value2], ... ]
-
-Macros:
-- $from -> start timestamp of panel
-- $to -> stop timestamp of panel
-- $interval -> interval of panel
-
-Example of SQL:
-  SELECT count(*)
-  FROM db.table
-  WHERE ts > $from and ts < $to
-  INTERVAL ($interval)
-    
-
- -
-
{{ctrl.lastQueryError}}
-
- -
diff --git a/src/connector/grafana/tdengine/dist/plugin.json b/src/connector/grafana/tdengine/dist/plugin.json deleted file mode 100644 index e9954ce6ce..0000000000 --- a/src/connector/grafana/tdengine/dist/plugin.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "TDengine", - "id": "taosdata-tdengine-datasource", - "type": "datasource", - - "partials": { - "config": "partials/config.html" - }, - - "metrics": true, - "annotations": false, - - "info": { - "description": "grafana datasource plugin for tdengine", - "author": { - "name": "Taosdata Inc.", - "url": "https://www.taosdata.com" - }, - "logos": { - "small": "img/taosdata_logo.png", - "large": "img/taosdata_logo.png" - }, - "links": [ - {"name": "GitHub", "url": "https://github.com/taosdata/TDengine/tree/develop/src/connector/grafana/tdengine"}, - {"name": "AGPL 3.0", "url": "https://github.com/taosdata/TDengine/tree/develop/src/connector/grafana/tdengine/LICENSE"} - ], - "version": "1.0.0", - "updated": "2020-01-13" - }, - - "dependencies": { - "grafanaVersion": "5.2.4", - "plugins": [ ] - } -} diff --git a/src/connector/grafana/tdengine/dist/query_ctrl.js b/src/connector/grafana/tdengine/dist/query_ctrl.js deleted file mode 100644 index 0bc8f1cdfb..0000000000 --- a/src/connector/grafana/tdengine/dist/query_ctrl.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GenericDatasourceQueryCtrl = undefined; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _sdk = require('app/plugins/sdk'); - -require('./css/query-editor.css!'); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - -var GenericDatasourceQueryCtrl = exports.GenericDatasourceQueryCtrl = function (_QueryCtrl) { - _inherits(GenericDatasourceQueryCtrl, _QueryCtrl); - - function GenericDatasourceQueryCtrl($scope, $injector) { - _classCallCheck(this, GenericDatasourceQueryCtrl); - - var _this = _possibleConstructorReturn(this, (GenericDatasourceQueryCtrl.__proto__ || Object.getPrototypeOf(GenericDatasourceQueryCtrl)).call(this, $scope, $injector)); - - _this.scope = $scope; - _this.target.target = _this.target.target || 'select metric'; - _this.target.type = _this.target.type || 'timeserie'; - return _this; - } - - _createClass(GenericDatasourceQueryCtrl, [{ - key: 'onChangeInternal', - value: function onChangeInternal() { - this.panelCtrl.refresh(); // Asks the panel to refresh data. - } - }, { - key: 'generateSQL', - value: function generateSQL(query) { - this.lastGenerateSQL = this.datasource.generateSql(this.panelCtrl, this.target); - this.showGenerateSQL = !this.showGenerateSQL; - } - }]); - - return GenericDatasourceQueryCtrl; -}(_sdk.QueryCtrl); - -GenericDatasourceQueryCtrl.templateUrl = 'partials/query.editor.html'; -//# sourceMappingURL=query_ctrl.js.map diff --git a/src/connector/grafana/tdengine/dist/query_ctrl.js.map b/src/connector/grafana/tdengine/dist/query_ctrl.js.map deleted file mode 100644 index f9410918e0..0000000000 --- a/src/connector/grafana/tdengine/dist/query_ctrl.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/query_ctrl.js"],"names":["GenericDatasourceQueryCtrl","$scope","$injector","scope","target","type","panelCtrl","refresh","query","lastGenerateSQL","datasource","generateSql","showGenerateSQL","QueryCtrl","templateUrl"],"mappings":";;;;;;;;;AAAA;;AACA;;;;;;;;IAEaA,0B,WAAAA,0B;;;AAEX,sCAAYC,MAAZ,EAAoBC,SAApB,EAAgC;AAAA;;AAAA,wJACxBD,MADwB,EAChBC,SADgB;;AAG9B,UAAKC,KAAL,GAAaF,MAAb;AACA,UAAKG,MAAL,CAAYA,MAAZ,GAAqB,MAAKA,MAAL,CAAYA,MAAZ,IAAsB,eAA3C;AACA,UAAKA,MAAL,CAAYC,IAAZ,GAAmB,MAAKD,MAAL,CAAYC,IAAZ,IAAoB,WAAvC;AAL8B;AAM/B;;;;uCAEkB;AACjB,WAAKC,SAAL,CAAeC,OAAf,GADiB,CACS;AAC3B;;;gCAEWC,K,EAAO;AACjB,WAAKC,eAAL,GAAuB,KAAKC,UAAL,CAAgBC,WAAhB,CAA6B,KAAKL,SAAlC,EAA6C,KAAKF,MAAlD,CAAvB;AACA,WAAKQ,eAAL,GAAuB,CAAC,KAAKA,eAA7B;AACD;;;;EAjB6CC,c;;AAqBhDb,2BAA2Bc,WAA3B,GAAyC,4BAAzC","file":"query_ctrl.js","sourcesContent":["import {QueryCtrl} from 'app/plugins/sdk';\nimport './css/query-editor.css!'\n\nexport class GenericDatasourceQueryCtrl extends QueryCtrl {\n\n constructor($scope, $injector) {\n super($scope, $injector);\n\n this.scope = $scope;\n this.target.target = this.target.target || 'select metric';\n this.target.type = this.target.type || 'timeserie';\n }\n\n onChangeInternal() {\n this.panelCtrl.refresh(); // Asks the panel to refresh data.\n }\n\n generateSQL(query) {\n this.lastGenerateSQL = this.datasource.generateSql( this.panelCtrl, this.target);\n this.showGenerateSQL = !this.showGenerateSQL;\n }\n\n}\n\nGenericDatasourceQueryCtrl.templateUrl = 'partials/query.editor.html';"]} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/package-lock.json b/src/connector/grafana/tdengine/package-lock.json deleted file mode 100644 index 013a005d8d..0000000000 --- a/src/connector/grafana/tdengine/package-lock.json +++ /dev/null @@ -1,4000 +0,0 @@ -{ - "name": "TDengine", - "version": "2.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@types/estree": { - "version": "0.0.38", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.38.tgz", - "integrity": "sha512-F/v7t1LwS4vnXuPooJQGBRKRGIoxWUTmA4VHfqjOccFsNDThD5bfUNpITive6s352O7o384wcpEaDV8rHCehDA==", - "dev": true - }, - "@types/node": { - "version": "12.12.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.21.tgz", - "integrity": "sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA==", - "dev": true - }, - "abab": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz", - "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - }, - "acorn-globals": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", - "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", - "dev": true, - "requires": { - "acorn": "^4.0.4" - } - }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - }, - "dependencies": { - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - } - } - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", - "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==", - "dev": true - }, - "babel": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel/-/babel-6.23.0.tgz", - "integrity": "sha1-0NHn2APpdHZb7qMjLU4VPA77kPQ=", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", - "dev": true, - "requires": { - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-dynamic-import": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-amd-system-wrapper": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-amd-system-wrapper/-/babel-plugin-transform-amd-system-wrapper-0.3.7.tgz", - "integrity": "sha1-Uhx4LTVkRJHJeepoPopeHK/wukI=", - "dev": true, - "requires": { - "babel-template": "^6.9.0" - } - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-cjs-system-wrapper": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-cjs-system-wrapper/-/babel-plugin-transform-cjs-system-wrapper-0.6.2.tgz", - "integrity": "sha1-vXSUd1KJQk/0k7btRV3klb1xuh0=", - "dev": true, - "requires": { - "babel-template": "^6.9.0" - } - }, - "babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", - "dev": true, - "requires": { - "babel-helper-define-map": "^6.24.1", - "babel-helper-function-name": "^6.24.1", - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-helper-replace-supers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", - "dev": true, - "requires": { - "babel-helper-replace-supers": "^6.24.1", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-global-system-wrapper": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-global-system-wrapper/-/babel-plugin-transform-global-system-wrapper-0.3.4.tgz", - "integrity": "sha1-lI3X0p/CFEfjm9NEfy3rx/L3Oqw=", - "dev": true, - "requires": { - "babel-template": "^6.9.0" - } - }, - "babel-plugin-transform-object-rest-spread": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", - "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", - "dev": true, - "requires": { - "babel-plugin-syntax-object-rest-spread": "^6.8.0", - "babel-runtime": "^6.26.0" - } - }, - "babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", - "dev": true, - "requires": { - "regenerator-transform": "^0.10.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-system-register": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-system-register/-/babel-plugin-transform-system-register-0.0.1.tgz", - "integrity": "sha1-nf9AOQwnY6xRjwsq18XqT2WlviU=", - "dev": true - }, - "babel-preset-env": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", - "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.22.0", - "babel-plugin-syntax-trailing-function-commas": "^6.22.0", - "babel-plugin-transform-async-to-generator": "^6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoping": "^6.23.0", - "babel-plugin-transform-es2015-classes": "^6.23.0", - "babel-plugin-transform-es2015-computed-properties": "^6.22.0", - "babel-plugin-transform-es2015-destructuring": "^6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", - "babel-plugin-transform-es2015-for-of": "^6.23.0", - "babel-plugin-transform-es2015-function-name": "^6.22.0", - "babel-plugin-transform-es2015-literals": "^6.22.0", - "babel-plugin-transform-es2015-modules-amd": "^6.22.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-umd": "^6.23.0", - "babel-plugin-transform-es2015-object-super": "^6.22.0", - "babel-plugin-transform-es2015-parameters": "^6.23.0", - "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", - "babel-plugin-transform-es2015-spread": "^6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", - "babel-plugin-transform-es2015-template-literals": "^6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", - "babel-plugin-transform-exponentiation-operator": "^6.22.0", - "babel-plugin-transform-regenerator": "^6.22.0", - "browserslist": "^3.2.6", - "invariant": "^2.2.2", - "semver": "^5.3.0" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "body": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", - "dev": true, - "requires": { - "continuable-cache": "^0.3.1", - "error": "^7.0.0", - "raw-body": "~1.1.0", - "safe-json-parse": "~1.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "browserify-zlib": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", - "dev": true, - "requires": { - "pako": "~0.2.0" - } - }, - "browserslist": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", - "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30000844", - "electron-to-chromium": "^1.3.47" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "caniuse-lite": { - "version": "1.0.30001016", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001016.tgz", - "integrity": "sha512-yYQ2QfotceRiH4U+h1Us86WJXtVHDmy3nEKIdYPsZCYnOV5/tMgGbmoIlrMzmh2VXlproqYtVaKeGDBkMZifFA==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "chai": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz", - "integrity": "sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc=", - "dev": true, - "requires": { - "assertion-error": "^1.0.1", - "deep-eql": "^0.1.3", - "type-detect": "^1.0.0" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "coffeescript": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz", - "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=", - "dev": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz", - "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "content-type-parser": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.2.tgz", - "integrity": "sha512-lM4l4CnMEwOLHAHr/P6MEZwZFPJFtAAKgL6pogbXmVZggIqXhdB6RbBtPOTsw2FcXwYhehRGERJmRrjOiIB8pQ==", - "dev": true - }, - "continuable-cache": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "cssstyle": { - "version": "0.2.37", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz", - "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=", - "dev": true, - "requires": { - "cssom": "0.3.x" - } - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dev": true, - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-uri-to-buffer": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-0.0.4.tgz", - "integrity": "sha1-RuE6udqOMJdFyNAc5UchPr2y/j8=", - "dev": true - }, - "dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "deep-eql": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz", - "integrity": "sha1-71WKyrjeJSBs1xOQbXTlaTDrafI=", - "dev": true, - "requires": { - "type-detect": "0.1.1" - }, - "dependencies": { - "type-detect": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz", - "integrity": "sha1-C6XsKohWQORw6k6FBZcZANrFiCI=", - "dev": true - } - } - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "electron-to-chromium": { - "version": "1.3.322", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz", - "integrity": "sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "error": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", - "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", - "dev": true, - "requires": { - "string-template": "~0.2.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.17.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0-next.1.tgz", - "integrity": "sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.0", - "string.prototype.trimright": "^2.1.0" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" - } - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dev": true, - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-template-strings": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es6-template-strings/-/es6-template-strings-2.0.1.tgz", - "integrity": "sha1-sWbGpiVi9Hi7d3X2ypYQOlmbSyw=", - "dev": true, - "requires": { - "es5-ext": "^0.10.12", - "esniff": "^1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "escodegen": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", - "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", - "dev": true, - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "esniff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/esniff/-/esniff-1.1.0.tgz", - "integrity": "sha1-xmhJIp+RRk3t4uDUAgHtar9l8qw=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.12" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", - "dev": true - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", - "dev": true, - "requires": { - "type": "^2.0.0" - }, - "dependencies": { - "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - } - }, - "file-sync-cmp": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", - "dev": true - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", - "dev": true, - "requires": { - "glob": "~5.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "flat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", - "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", - "dev": true, - "requires": { - "is-buffer": "~2.0.3" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", - "dev": true - } - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "getobject": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", - "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globule": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", - "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", - "dev": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", - "dev": true - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "grunt": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.4.tgz", - "integrity": "sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ==", - "dev": true, - "requires": { - "coffeescript": "~1.10.0", - "dateformat": "~1.0.12", - "eventemitter2": "~0.4.13", - "exit": "~0.1.1", - "findup-sync": "~0.3.0", - "glob": "~7.0.0", - "grunt-cli": "~1.2.0", - "grunt-known-options": "~1.1.0", - "grunt-legacy-log": "~2.0.0", - "grunt-legacy-util": "~1.1.1", - "iconv-lite": "~0.4.13", - "js-yaml": "~3.13.0", - "minimatch": "~3.0.2", - "mkdirp": "~0.5.1", - "nopt": "~3.0.6", - "path-is-absolute": "~1.0.0", - "rimraf": "~2.6.2" - } - }, - "grunt-babel": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/grunt-babel/-/grunt-babel-6.0.0.tgz", - "integrity": "sha1-N4GJtIfeEWjExKn8iN1gBbNd+WA=", - "dev": true, - "requires": { - "babel-core": "^6.0.12" - } - }, - "grunt-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", - "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", - "dev": true, - "requires": { - "findup-sync": "~0.3.0", - "grunt-known-options": "~1.1.0", - "nopt": "~3.0.6", - "resolve": "~1.1.0" - }, - "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - } - } - }, - "grunt-contrib-clean": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", - "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", - "dev": true, - "requires": { - "async": "^1.5.2", - "rimraf": "^2.5.1" - } - }, - "grunt-contrib-copy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "file-sync-cmp": "^0.1.0" - } - }, - "grunt-contrib-uglify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-2.3.0.tgz", - "integrity": "sha1-s9AmDr3WzvoS/y+Onh4ln33kIW8=", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "maxmin": "^1.1.0", - "object.assign": "^4.0.4", - "uglify-js": "~2.8.21", - "uri-path": "^1.0.0" - } - }, - "grunt-contrib-watch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", - "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", - "dev": true, - "requires": { - "async": "^2.6.0", - "gaze": "^1.1.0", - "lodash": "^4.17.10", - "tiny-lr": "^1.1.1" - }, - "dependencies": { - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - }, - "dependencies": { - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - } - } - } - } - }, - "grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", - "dev": true - }, - "grunt-legacy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", - "dev": true, - "requires": { - "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.0.0", - "hooker": "~0.2.3", - "lodash": "~4.17.5" - } - }, - "grunt-legacy-log-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", - "dev": true, - "requires": { - "chalk": "~2.4.1", - "lodash": "~4.17.10" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "grunt-legacy-util": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", - "dev": true, - "requires": { - "async": "~1.5.2", - "exit": "~0.1.1", - "getobject": "~0.1.0", - "hooker": "~0.2.3", - "lodash": "~4.17.10", - "underscore.string": "~3.3.4", - "which": "~1.3.0" - } - }, - "grunt-mocha-test": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz", - "integrity": "sha512-zQGEsi3d+ViPPi7/4jcj78afKKAKiAA5n61pknQYi25Ugik+aNOuRmiOkmb8mN2CeG8YxT+YdT1H1Q7B/eNkoQ==", - "dev": true, - "requires": { - "hooker": "^0.2.3", - "mkdirp": "^0.5.0" - } - }, - "grunt-systemjs-builder": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-systemjs-builder/-/grunt-systemjs-builder-1.0.0.tgz", - "integrity": "sha1-XY58vspbNeK3tr0ALpqdfgPX3s0=", - "dev": true, - "requires": { - "systemjs-builder": "0.14.11 - 0.16.x" - } - }, - "gzip-size": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-1.0.0.tgz", - "integrity": "sha1-Zs+LEBBHInuVus5uodoMF37Vwi8=", - "dev": true, - "requires": { - "browserify-zlib": "^0.1.4", - "concat-stream": "^1.4.1" - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hooker": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", - "dev": true - }, - "html-encoding-sniffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.1" - } - }, - "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", - "dev": true - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsdom": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz", - "integrity": "sha1-6MVG//ywbADUgzyoRBD+1/igl9Q=", - "dev": true, - "requires": { - "abab": "^1.0.3", - "acorn": "^4.0.4", - "acorn-globals": "^3.1.0", - "array-equal": "^1.0.0", - "content-type-parser": "^1.0.1", - "cssom": ">= 0.3.2 < 0.4.0", - "cssstyle": ">= 0.2.37 < 0.3.0", - "escodegen": "^1.6.1", - "html-encoding-sniffer": "^1.0.1", - "nwmatcher": ">= 1.3.9 < 2.0.0", - "parse5": "^1.5.1", - "request": "^2.79.0", - "sax": "^1.2.1", - "symbol-tree": "^3.2.1", - "tough-cookie": "^2.3.2", - "webidl-conversions": "^4.0.0", - "whatwg-encoding": "^1.0.1", - "whatwg-url": "^4.3.0", - "xml-name-validator": "^2.0.1" - } - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "livereload-js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", - "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", - "dev": true - }, - "load-grunt-tasks": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/load-grunt-tasks/-/load-grunt-tasks-3.5.2.tgz", - "integrity": "sha1-ByhWEYD9IP+KaSdQWFL8WKrqDIg=", - "dev": true, - "requires": { - "arrify": "^1.0.0", - "multimatch": "^2.0.0", - "pkg-up": "^1.0.0", - "resolve-pkg": "^0.1.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "dependencies": { - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } - } - }, - "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" - }, - "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "requires": { - "chalk": "^2.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "maxmin": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-1.1.0.tgz", - "integrity": "sha1-cTZehKmd2Piz99X94vANHn9zvmE=", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "figures": "^1.0.1", - "gzip-size": "^1.0.0", - "pretty-bytes": "^1.0.0" - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "mime-db": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", - "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.25", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", - "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", - "dev": true, - "requires": { - "mime-db": "1.42.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } - } - }, - "mocha": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.2.tgz", - "integrity": "sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A==", - "dev": true, - "requires": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "2.2.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "ms": "2.1.1", - "node-environment-flags": "1.0.5", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.0", - "yargs-parser": "13.1.1", - "yargs-unparser": "1.6.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "node-environment-flags": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", - "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "nwmatcher": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz", - "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", - "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "parse5": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz", - "integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=", - "dev": true - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-up": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-1.0.0.tgz", - "integrity": "sha1-Pgj7RhUlxEIWJKM7n35tCvWwWiY=", - "dev": true, - "requires": { - "find-up": "^1.0.0" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "pretty-bytes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-1.0.4.tgz", - "integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.1.0" - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "prunk": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/prunk/-/prunk-1.3.1.tgz", - "integrity": "sha512-nLpTxQCqaKzdpzA344aK8u1wpVcnT0OD9oruH281TeqkqnxCWW4dD8Vn65mQWlfwPO8yWFyeK2h2qcw2N7hveA==", - "dev": true - }, - "psl": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.6.0.tgz", - "integrity": "sha512-SYKKmVel98NCOYXpkwUqZqh0ahZeeKfmisiLIcEZdsb+WbLv02g/dI5BUmZnIyOe7RzZtLax81nnb2HbvC2tzA==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz", - "integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==", - "dev": true - }, - "raw-body": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", - "dev": true, - "requires": { - "bytes": "1", - "string_decoder": "0.10" - }, - "dependencies": { - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - } - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", - "dev": true, - "requires": { - "babel-runtime": "^6.18.0", - "babel-types": "^6.19.0", - "private": "^0.1.6" - } - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.1.tgz", - "integrity": "sha512-fn5Wobh4cxbLzuHaE+nphztHy43/b++4M6SsGFC2gB8uYwf0C8LcarfCz1un7UTW8OFQg9iNjZ4xpcFVGebDPg==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", - "dev": true - }, - "resolve-pkg": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-0.1.0.tgz", - "integrity": "sha1-AsyZNBDik2livZcWahsHfalyVTE=", - "dev": true, - "requires": { - "resolve-from": "^2.0.0" - } - }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "rollup": { - "version": "0.58.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.58.2.tgz", - "integrity": "sha512-RZVvCWm9BHOYloaE6LLiE/ibpjv1CmI8F8k0B0Cp+q1eezo3cswszJH1DN0djgzSlo0hjuuCmyeI+1XOYLl4wg==", - "dev": true, - "requires": { - "@types/estree": "0.0.38", - "@types/node": "*" - } - }, - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safe-json-parse": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "systemjs": { - "version": "0.19.47", - "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-0.19.47.tgz", - "integrity": "sha1-yMk5NxgPP1SBx2nNJyB2P7SjHG8=", - "dev": true, - "requires": { - "when": "^3.7.5" - } - }, - "systemjs-builder": { - "version": "0.16.15", - "resolved": "https://registry.npmjs.org/systemjs-builder/-/systemjs-builder-0.16.15.tgz", - "integrity": "sha512-C18G//KWWwQpstAVBUDt0YbbqvSFVVtr0MFqtf2zB4U/cePOA00Btcja++mzlFLMnepVpDv0GdtfE/6A8lrxeA==", - "dev": true, - "requires": { - "babel-core": "^6.24.1", - "babel-plugin-syntax-dynamic-import": "^6.18.0", - "babel-plugin-transform-amd-system-wrapper": "^0.3.7", - "babel-plugin-transform-cjs-system-wrapper": "^0.6.2", - "babel-plugin-transform-es2015-modules-systemjs": "^6.6.5", - "babel-plugin-transform-global-system-wrapper": "^0.3.4", - "babel-plugin-transform-system-register": "^0.0.1", - "bluebird": "^3.3.4", - "data-uri-to-buffer": "0.0.4", - "es6-template-strings": "^2.0.0", - "glob": "^7.0.3", - "mkdirp": "^0.5.1", - "rollup": "^0.58.2", - "source-map": "^0.5.3", - "systemjs": "^0.19.46", - "terser": "3.8.1", - "traceur": "0.0.105" - } - }, - "terser": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-3.8.1.tgz", - "integrity": "sha512-FRin3gKQ0vm0xPPLuxw1FqpVgv1b2pBpYCaFb5qe6A7sD749Fnq1VbDiX3CEFM0BV0fqDzFtBfgmxhxCdzKQIg==", - "dev": true, - "requires": { - "commander": "~2.16.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.6" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } - } - }, - "tiny-lr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", - "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", - "dev": true, - "requires": { - "body": "^5.1.0", - "debug": "^3.1.0", - "faye-websocket": "~0.10.0", - "livereload-js": "^2.3.0", - "object-assign": "^4.1.0", - "qs": "^6.4.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", - "dev": true - }, - "traceur": { - "version": "0.0.105", - "resolved": "https://registry.npmjs.org/traceur/-/traceur-0.0.105.tgz", - "integrity": "sha1-XPne6D1rd4YcPWxE1ThZrterBHk=", - "dev": true, - "requires": { - "commander": "2.9.x", - "glob": "5.0.x", - "rsvp": "^3.0.13", - "semver": "^4.3.3", - "source-map-support": "~0.2.8" - }, - "dependencies": { - "commander": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "semver": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=", - "dev": true - }, - "source-map": { - "version": "0.1.32", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz", - "integrity": "sha1-yLbBZ3l7pHQKjqMyUhYv8IWRsmY=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - }, - "source-map-support": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz", - "integrity": "sha1-6lo5AKHByyUJagrozFwrSxDe09w=", - "dev": true, - "requires": { - "source-map": "0.1.32" - } - } - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-1.0.0.tgz", - "integrity": "sha1-diIXzAbbJY7EiQihKY6LlRIejqI=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "underscore.string": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", - "dev": true, - "requires": { - "sprintf-js": "^1.0.3", - "util-deprecate": "^1.0.2" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uri-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uri-path/-/uri-path-1.0.0.tgz", - "integrity": "sha1-l0fwGDWJM8Md4PzP2C0TjmcmLjI=", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "websocket-driver": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", - "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "requires": { - "iconv-lite": "0.4.24" - } - }, - "whatwg-url": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-4.8.0.tgz", - "integrity": "sha1-0pgaqRSMHgCkHFphMRZqtGg7vMA=", - "dev": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", - "dev": true - } - } - }, - "when": { - "version": "3.7.8", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", - "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xml-name-validator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz", - "integrity": "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - } - } - }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - }, - "yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", - "dev": true, - "requires": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" - } - } - } - }, - "yarn": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/yarn/-/yarn-1.22.0.tgz", - "integrity": "sha512-KMHP/Jq53jZKTY9iTUt3dIVl/be6UPs2INo96+BnZHLKxYNTfwMmlgHTaMWyGZoO74RI4AIFvnWhYrXq2USJkg==" - } - } -} diff --git a/src/connector/grafana/tdengine/package.json b/src/connector/grafana/tdengine/package.json deleted file mode 100644 index b7e6512354..0000000000 --- a/src/connector/grafana/tdengine/package.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "TDengine", - "private": false, - "version": "2.0.0", - "description": "grafana datasource plugin for tdengine", - "scripts": { - "build": "./node_modules/grunt-cli/bin/grunt", - "test": "./node_modules/grunt-cli/bin/grunt mochaTest" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/taosdata/TDengine.git" - }, - "author": "https://www.taosdata.com", - "license": "AGPL 3.0", - "bugs": { - "url": "https://github.com/taosdata/TDengine/issues" - }, - "engineStrict": true, - "devDependencies": { - "babel": "^6.23.0", - "babel-plugin-transform-object-rest-spread": "^6.26.0", - "babel-preset-env": "^1.7.0", - "chai": "~3.5.0", - "grunt": "^1.0.4", - "grunt-babel": "~6.0.0", - "grunt-cli": "^1.2.0", - "grunt-contrib-clean": "^1.1.0", - "grunt-contrib-copy": "^1.0.0", - "grunt-contrib-uglify": "^2.3.0", - "grunt-contrib-watch": "^1.0.0", - "grunt-mocha-test": "^0.13.2", - "grunt-systemjs-builder": "^1.0.0", - "jsdom": "~9.12.0", - "load-grunt-tasks": "^3.5.2", - "mocha": "^6.2.2", - "prunk": "^1.3.0", - "q": "^1.5.0" - }, - "dependencies": { - "lodash": "^4.17.19", - "yarn": "^1.22.0" - }, - "homepage": "https://github.com/taosdata/TDengine/tree/develop/src/connector/grafana/tdengine" -} diff --git a/src/connector/grafana/tdengine/spec/datasource_spec.js b/src/connector/grafana/tdengine/spec/datasource_spec.js deleted file mode 100755 index 201b6fecb4..0000000000 --- a/src/connector/grafana/tdengine/spec/datasource_spec.js +++ /dev/null @@ -1,22 +0,0 @@ -import {Datasource} from "../module"; -import Q from "q"; - -describe('GenericDatasource', function() { - var ctx = {}; - - beforeEach(function() { - ctx.$q = Q; - ctx.backendSrv = {}; - ctx.templateSrv = {}; - ctx.ds = new Datasource({}, ctx.$q, ctx.backendSrv, ctx.templateSrv); - }); - - it('should return an empty array when no targets are set', function(done) { - ctx.ds.query({targets: []}).then(function(result) { - expect(result.data).to.have.length(0); - done(); - }); - }); - - -}); diff --git a/src/connector/grafana/tdengine/spec/test-main.js b/src/connector/grafana/tdengine/spec/test-main.js deleted file mode 100755 index 3935b6fd45..0000000000 --- a/src/connector/grafana/tdengine/spec/test-main.js +++ /dev/null @@ -1,20 +0,0 @@ -import prunk from 'prunk'; -import {jsdom} from 'jsdom'; -import chai from 'chai'; - -// Mock Grafana modules that are not available outside of the core project -// Required for loading module.js -prunk.mock('./css/query-editor.css!', 'no css, dude.'); -prunk.mock('app/plugins/sdk', { - QueryCtrl: null -}); - -// Setup jsdom -// Required for loading angularjs -global.document = jsdom(''); -global.window = global.document.parentWindow; - -// Setup Chai -chai.should(); -global.assert = chai.assert; -global.expect = chai.expect; diff --git a/src/connector/grafana/tdengine/src/css/query-editor.css b/src/connector/grafana/tdengine/src/css/query-editor.css deleted file mode 100644 index 3b678b9f36..0000000000 --- a/src/connector/grafana/tdengine/src/css/query-editor.css +++ /dev/null @@ -1,3 +0,0 @@ -.generic-datasource-query-row .query-keyword { - width: 75px; -} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/src/datasource.js b/src/connector/grafana/tdengine/src/datasource.js deleted file mode 100644 index 08426bb3df..0000000000 --- a/src/connector/grafana/tdengine/src/datasource.js +++ /dev/null @@ -1,127 +0,0 @@ -import _ from "lodash"; - -export class GenericDatasource { - - constructor(instanceSettings, $q, backendSrv, templateSrv) { - this.type = instanceSettings.type; - this.url = instanceSettings.url; - this.name = instanceSettings.name; - this.q = $q; - this.backendSrv = backendSrv; - this.templateSrv = templateSrv; - this.headers = {'Content-Type': 'application/json'}; - this.headers.Authorization = this.getAuthorization(instanceSettings.jsonData); - } - - query(options) { - var targets = this.buildQueryParameters(options); - - if (targets.length <= 0) { - return this.q.when({data: []}); - } - - return this.doRequest({ - url: this.url + '/grafana/query', - data: targets, - method: 'POST' - }); - } - - testDatasource() { - return this.doRequest({ - url: this.url + '/grafana/heartbeat', - method: 'GET', - }).then(response => { - if (response.status === 200) { - return { status: "success", message: "TDengine Data source is working", title: "Success" }; - } - }); - } - - doRequest(options) { - options.headers = this.headers; - - return this.backendSrv.datasourceRequest(options); - } - - buildQueryParameters(options) { - - var targets = _.map(options.targets, target => { - return { - refId: target.refId, - alias: this.generateAlias(options, target), - sql: this.generateSql(options, target) - }; - }); - - return targets; - } - - encode(input) { - var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - var output = ""; - var chr1, chr2, chr3, enc1, enc2, enc3, enc4; - var i = 0; - while (i < input.length) { - chr1 = input.charCodeAt(i++); - chr2 = input.charCodeAt(i++); - chr3 = input.charCodeAt(i++); - enc1 = chr1 >> 2; - enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); - enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); - enc4 = chr3 & 63; - if (isNaN(chr2)) { - enc3 = enc4 = 64; - } else if (isNaN(chr3)) { - enc4 = 64; - } - output = output + _keyStr.charAt(enc1) + _keyStr.charAt(enc2) + _keyStr.charAt(enc3) + _keyStr.charAt(enc4); - } - - return output; - } - - getAuthorization(jsonData){ - jsonData = jsonData || {}; - var defaultUser = jsonData.user || "root"; - var defaultPassword = jsonData.password || "taosdata"; - - return "Basic " + this.encode(defaultUser + ":" + defaultPassword); - } - - generateAlias(options, target){ - var alias = target.alias || ""; - alias = this.templateSrv.replace(alias, options.scopedVars, 'csv'); - return alias; - } - - generateSql(options, target) { - var sql = target.sql; - if (sql == null || sql == ""){ - return sql; - } - - var queryStart = "now-1h"; - if (options != null && options.range != null && options.range.from != null){ - queryStart = options.range.from.toISOString(); - } - - var queryEnd = "now"; - if (options != null && options.range != null && options.range.to != null){ - queryEnd = options.range.to.toISOString(); - } - var intervalMs = options.intervalMs || "20000"; - - intervalMs += "a"; - sql = sql.replace(/^\s+|\s+$/gm, ''); - sql = sql.replace("$from", "'" + queryStart + "'"); - sql = sql.replace("$begin", "'" + queryStart + "'"); - sql = sql.replace("$to", "'" + queryEnd + "'"); - sql = sql.replace("$end", "'" + queryEnd + "'"); - sql = sql.replace("$interval", intervalMs); - - sql = this.templateSrv.replace(sql, options.scopedVars, 'csv'); - return sql; - } - -} \ No newline at end of file diff --git a/src/connector/grafana/tdengine/src/img/taosdata_logo.png b/src/connector/grafana/tdengine/src/img/taosdata_logo.png deleted file mode 100644 index 88d3bacd09593f2735f279714f4a534624042838..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3211 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 diff --git a/src/connector/grafana/tdengine/src/module.js b/src/connector/grafana/tdengine/src/module.js deleted file mode 100644 index 8ab46f4ede..0000000000 --- a/src/connector/grafana/tdengine/src/module.js +++ /dev/null @@ -1,19 +0,0 @@ -import {GenericDatasource} from './datasource'; -import {GenericDatasourceQueryCtrl} from './query_ctrl'; - -class GenericConfigCtrl {} -GenericConfigCtrl.templateUrl = 'partials/config.html'; - -class GenericQueryOptionsCtrl {} -GenericQueryOptionsCtrl.templateUrl = 'partials/query.options.html'; - -class GenericAnnotationsQueryCtrl {} -GenericAnnotationsQueryCtrl.templateUrl = 'partials/annotations.editor.html' - -export { - GenericDatasource as Datasource, - GenericDatasourceQueryCtrl as QueryCtrl, - GenericConfigCtrl as ConfigCtrl, - GenericQueryOptionsCtrl as QueryOptionsCtrl, - GenericAnnotationsQueryCtrl as AnnotationsQueryCtrl -}; diff --git a/src/connector/grafana/tdengine/src/partials/config.html b/src/connector/grafana/tdengine/src/partials/config.html deleted file mode 100644 index f12eb86354..0000000000 --- a/src/connector/grafana/tdengine/src/partials/config.html +++ /dev/null @@ -1,19 +0,0 @@ -

TDengine Connection

- -
-
- Host - -
- -
-
- User - -
-
- Password - -
-
-
\ No newline at end of file diff --git a/src/connector/grafana/tdengine/src/partials/query.editor.html b/src/connector/grafana/tdengine/src/partials/query.editor.html deleted file mode 100644 index 4fd209d394..0000000000 --- a/src/connector/grafana/tdengine/src/partials/query.editor.html +++ /dev/null @@ -1,58 +0,0 @@ - - -
-
- - -
-
- -
-
-
- - -
-
-
- -
-
- -
-
- -
-
{{ctrl.lastGenerateSQL}}
-
- -
-
Use any SQL that can return Resultset such as:
-- [[timestamp1, value1], [timestamp2, value2], ... ]
-
-Macros:
-- $from -> start timestamp of panel
-- $to -> stop timestamp of panel
-- $interval -> interval of panel
-
-Example of SQL:
-  SELECT count(*)
-  FROM db.table
-  WHERE ts > $from and ts < $to
-  INTERVAL ($interval)
-    
-
- -
-
{{ctrl.lastQueryError}}
-
- -
diff --git a/src/connector/grafana/tdengine/src/plugin.json b/src/connector/grafana/tdengine/src/plugin.json deleted file mode 100644 index e9954ce6ce..0000000000 --- a/src/connector/grafana/tdengine/src/plugin.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "TDengine", - "id": "taosdata-tdengine-datasource", - "type": "datasource", - - "partials": { - "config": "partials/config.html" - }, - - "metrics": true, - "annotations": false, - - "info": { - "description": "grafana datasource plugin for tdengine", - "author": { - "name": "Taosdata Inc.", - "url": "https://www.taosdata.com" - }, - "logos": { - "small": "img/taosdata_logo.png", - "large": "img/taosdata_logo.png" - }, - "links": [ - {"name": "GitHub", "url": "https://github.com/taosdata/TDengine/tree/develop/src/connector/grafana/tdengine"}, - {"name": "AGPL 3.0", "url": "https://github.com/taosdata/TDengine/tree/develop/src/connector/grafana/tdengine/LICENSE"} - ], - "version": "1.0.0", - "updated": "2020-01-13" - }, - - "dependencies": { - "grafanaVersion": "5.2.4", - "plugins": [ ] - } -} diff --git a/src/connector/grafana/tdengine/src/query_ctrl.js b/src/connector/grafana/tdengine/src/query_ctrl.js deleted file mode 100644 index 2b3998f2ab..0000000000 --- a/src/connector/grafana/tdengine/src/query_ctrl.js +++ /dev/null @@ -1,25 +0,0 @@ -import {QueryCtrl} from 'app/plugins/sdk'; -import './css/query-editor.css!' - -export class GenericDatasourceQueryCtrl extends QueryCtrl { - - constructor($scope, $injector) { - super($scope, $injector); - - this.scope = $scope; - this.target.target = this.target.target || 'select metric'; - this.target.type = this.target.type || 'timeserie'; - } - - onChangeInternal() { - this.panelCtrl.refresh(); // Asks the panel to refresh data. - } - - generateSQL(query) { - this.lastGenerateSQL = this.datasource.generateSql( this.panelCtrl, this.target); - this.showGenerateSQL = !this.showGenerateSQL; - } - -} - -GenericDatasourceQueryCtrl.templateUrl = 'partials/query.editor.html'; \ No newline at end of file diff --git a/src/connector/grafana/tdengine/yarn.lock b/src/connector/grafana/tdengine/yarn.lock deleted file mode 100644 index 00bc01df7a..0000000000 --- a/src/connector/grafana/tdengine/yarn.lock +++ /dev/null @@ -1,2960 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@types/estree@0.0.38": - version "0.0.38" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.38.tgz#c1be40aa933723c608820a99a373a16d215a1ca2" - -"@types/node@*": - version "10.3.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.3.6.tgz#ea8aab9439b59f40d19ec5f13b44642344872b11" - -abab@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" - -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - -acorn-globals@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf" - dependencies: - acorn "^4.0.4" - -acorn@^4.0.4: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" - -ajv@^5.1.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" - dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -ansi-colors@3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - dependencies: - color-convert "^1.9.0" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - -arrify@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - dependencies: - safer-buffer "~2.1.0" - -assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - -assertion-error@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" - -async@^1.5.2, async@~1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - -async@^2.6.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - dependencies: - lodash "^4.17.10" - -async@~0.2.6: - version "0.2.10" - resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - -aws4@^1.6.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" - -babel-code-frame@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" - dependencies: - chalk "^1.1.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.0.12, babel-core@^6.23.0: - version "6.23.1" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.23.1.tgz#c143cb621bb2f621710c220c5d579d15b8a442df" - dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.23.0" - babel-helpers "^6.23.0" - babel-messages "^6.23.0" - babel-register "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.1" - babel-types "^6.23.0" - babylon "^6.11.0" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" - slash "^1.0.0" - source-map "^0.5.0" - -babel-core@^6.24.1, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-generator@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.23.0.tgz#6b8edab956ef3116f79d8c84c5a3c05f32a74bc5" - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.23.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.2.0" - source-map "^0.5.0" - trim-right "^1.0.1" - -babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.22.0.tgz#3eacbf731d80705845dd2e9718f600cfb9b4ba72" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.22.0" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-regex@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.23.0.tgz#4f8f2e092d0b6a8808a4bde79c27f1e2ecf0d992" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.23.0" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - -babel-plugin-syntax-dynamic-import@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-amd-system-wrapper@^0.3.7: - version "0.3.7" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-amd-system-wrapper/-/babel-plugin-transform-amd-system-wrapper-0.3.7.tgz#521c782d35644491c979ea683e8a5e1caff0ba42" - dependencies: - babel-template "^6.9.0" - -babel-plugin-transform-async-to-generator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-cjs-system-wrapper@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-cjs-system-wrapper/-/babel-plugin-transform-cjs-system-wrapper-0.6.2.tgz#bd7494775289424ff493b6ed455de495bd71ba1d" - dependencies: - babel-template "^6.9.0" - -babel-plugin-transform-es2015-arrow-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.23.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - dependencies: - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-plugin-transform-es2015-classes@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-duplicate-keys@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" - -babel-plugin-transform-es2015-modules-systemjs@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-systemjs@^6.6.5: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.23.0.tgz#ae3469227ffac39b0310d90fec73bfdc4f6317b0" - dependencies: - babel-helper-hoist-variables "^6.22.0" - babel-runtime "^6.22.0" - babel-template "^6.23.0" - -babel-plugin-transform-es2015-modules-umd@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-sticky-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-typeof-symbol@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-global-system-wrapper@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-global-system-wrapper/-/babel-plugin-transform-global-system-wrapper-0.3.4.tgz#948dd7d29fc21447e39bd3447f2debc7f2f73aac" - dependencies: - babel-template "^6.9.0" - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-regenerator@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - dependencies: - regenerator-transform "^0.10.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-system-register@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-system-register/-/babel-plugin-transform-system-register-0.0.1.tgz#9dff40390c2763ac518f0b2ad7c5ea4f65a5be25" - -babel-preset-env@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-to-generator "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.23.0" - babel-plugin-transform-es2015-classes "^6.23.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" - babel-plugin-transform-es2015-destructuring "^6.23.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" - babel-plugin-transform-es2015-for-of "^6.23.0" - babel-plugin-transform-es2015-function-name "^6.22.0" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.22.0" - babel-plugin-transform-es2015-modules-commonjs "^6.23.0" - babel-plugin-transform-es2015-modules-systemjs "^6.23.0" - babel-plugin-transform-es2015-modules-umd "^6.23.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.23.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.23.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-exponentiation-operator "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" - browserslist "^3.2.6" - invariant "^2.2.2" - semver "^5.3.0" - -babel-register@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.23.0.tgz#c9aa3d4cca94b51da34826c4a0f9e08145d74ff3" - dependencies: - babel-core "^6.23.0" - babel-runtime "^6.22.0" - core-js "^2.4.0" - home-or-tmp "^2.0.0" - lodash "^4.2.0" - mkdirp "^0.5.1" - source-map-support "^0.4.2" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.23.0, babel-template@^6.9.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.23.0.tgz#04d4f270adbb3aa704a8143ae26faa529238e638" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" - babylon "^6.11.0" - lodash "^4.2.0" - -babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.23.0, babel-traverse@^6.23.1: - version "6.23.1" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.23.1.tgz#d3cb59010ecd06a97d81310065f966b699e14f48" - dependencies: - babel-code-frame "^6.22.0" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.23.0" - babylon "^6.15.0" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.23.0.tgz#bb17179d7538bad38cd0c9e115d340f77e7e9acf" - dependencies: - babel-runtime "^6.22.0" - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" - -babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babel@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel/-/babel-6.23.0.tgz#d0d1e7d803e974765beea3232d4e153c0efb90f4" - -babylon@^6.11.0, babylon@^6.15.0: - version "6.15.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.15.0.tgz#ba65cfa1a80e1759b0e89fb562e27dccae70348e" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - -balanced-match@^0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - dependencies: - tweetnacl "^0.14.3" - -bluebird@^3.3.4: - version "3.4.7" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3" - -body@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/body/-/body-5.1.0.tgz#e4ba0ce410a46936323367609ecb4e6553125069" - dependencies: - continuable-cache "^0.3.1" - error "^7.0.0" - raw-body "~1.1.0" - safe-json-parse "~1.0.1" - -brace-expansion@^1.0.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" - dependencies: - balanced-match "^0.4.1" - concat-map "0.0.1" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -browser-stdout@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" - integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== - -browserify-zlib@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d" - dependencies: - pako "~0.2.0" - -browserslist@^3.2.6: - version "3.2.8" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6" - dependencies: - caniuse-lite "^1.0.30000844" - electron-to-chromium "^1.3.47" - -buffer-from@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.0.tgz#87fcaa3a298358e0ade6e442cfce840740d1ad04" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -bytes@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-1.0.0.tgz#3569ede8ba34315fab99c3e92cb04c7220de1fa8" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - -camelcase@^5.0.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -caniuse-lite@^1.0.30000844: - version "1.0.30000859" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000859.tgz#da974adc5348fffe94724877a7ef8cb5d6d3d777" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" - dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" - -chai@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" - dependencies: - assertion-error "^1.0.1" - deep-eql "^0.1.3" - type-detect "^1.0.0" - -chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.0.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@~2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" - dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" - -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - -coffeescript@~1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/coffeescript/-/coffeescript-1.10.0.tgz#e7aa8301917ef621b35d8a39f348dcdd1db7e33e" - -color-convert@^1.9.0: - version "1.9.2" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.2.tgz#49881b8fba67df12a96bdf3f56c0aab9e7913147" - dependencies: - color-name "1.1.1" - -color-name@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - -combined-stream@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" - dependencies: - delayed-stream "~1.0.0" - -combined-stream@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" - dependencies: - delayed-stream "~1.0.0" - -commander@2.9.x: - version "2.9.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" - dependencies: - graceful-readlink ">= 1.0.0" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - -concat-stream@^1.4.1: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -content-type-parser@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" - -continuable-cache@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz#bd727a7faed77e71ff3985ac93351a912733ad0f" - -convert-source-map@^1.1.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.4.0.tgz#e3dad195bf61bfe13a7a3c73e9876ec14a0268f3" - -convert-source-map@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" - -core-js@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" - -core-js@^2.5.0: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - -core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": - version "0.3.2" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" - -"cssstyle@>= 0.2.37 < 0.3.0": - version "0.2.37" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54" - dependencies: - cssom "0.3.x" - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - dependencies: - array-find-index "^1.0.1" - -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - dependencies: - es5-ext "^0.10.9" - -d@^0.1.1, d@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309" - dependencies: - es5-ext "~0.10.2" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - dependencies: - assert-plus "^1.0.0" - -data-uri-to-buffer@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-0.0.4.tgz#46e13ab9da8e309745c8d01ce547213ebdb2fe3f" - -dateformat@~1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" - dependencies: - get-stdin "^4.0.1" - meow "^3.3.0" - -debug@3.2.6: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -debug@^2.1.1, debug@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" - dependencies: - ms "0.7.1" - -debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - dependencies: - ms "2.0.0" - -debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - dependencies: - ms "2.0.0" - -decamelize@^1.0.0, decamelize@^1.1.2, decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - -deep-eql@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" - dependencies: - type-detect "0.1.1" - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" - -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - -diff@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -electron-to-chromium@^1.3.47: - version "1.3.50" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.50.tgz#7438b76f92b41b919f3fbdd350fbd0757dacddf7" - -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - -error-ex@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - dependencies: - is-arrayish "^0.2.1" - -error@^7.0.0: - version "7.0.2" - resolved "https://registry.yarnpkg.com/error/-/error-7.0.2.tgz#a5f75fff4d9926126ddac0ea5dc38e689153cb02" - dependencies: - string-template "~0.2.1" - xtend "~4.0.0" - -es-abstract@^1.17.0-next.1: - version "1.17.0-next.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0-next.1.tgz#94acc93e20b05a6e96dacb5ab2f1cb3a81fc2172" - integrity sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw== - dependencies: - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - is-callable "^1.1.4" - is-regex "^1.0.4" - object-inspect "^1.7.0" - object-keys "^1.1.1" - object.assign "^4.1.0" - string.prototype.trimleft "^2.1.0" - string.prototype.trimright "^2.1.0" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -es5-ext@^0.10.12, es5-ext@^0.10.7, es5-ext@^0.10.9, es5-ext@~0.10.11, es5-ext@~0.10.2: - version "0.10.12" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.12.tgz#aa84641d4db76b62abba5e45fd805ecbab140047" - dependencies: - es6-iterator "2" - es6-symbol "~3.1" - -es6-iterator@2: - version "2.0.0" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.0.tgz#bd968567d61635e33c0b80727613c9cb4b096bac" - dependencies: - d "^0.1.1" - es5-ext "^0.10.7" - es6-symbol "3" - -es6-symbol@3, es6-symbol@~3.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.0.tgz#94481c655e7a7cad82eba832d97d5433496d7ffa" - dependencies: - d "~0.1.1" - es5-ext "~0.10.11" - -es6-template-strings@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-template-strings/-/es6-template-strings-2.0.1.tgz#b166c6a62562f478bb7775f6ca96103a599b4b2c" - dependencies: - es5-ext "^0.10.12" - esniff "^1.1" - -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - -escodegen@^1.6.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" - dependencies: - esprima "^2.7.1" - estraverse "^1.9.1" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.2.0" - -esniff@^1.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/esniff/-/esniff-1.1.0.tgz#c66849229f91464dede2e0d40201ed6abf65f2ac" - dependencies: - d "1" - es5-ext "^0.10.12" - -esprima@^2.7.1: - version "2.7.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -estraverse@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - -eventemitter2@~0.4.13: - version "0.4.14" - resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-0.4.14.tgz#8f61b75cde012b2e9eb284d4545583b5643b61ab" - -exit@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - -extend@~3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - -extsprintf@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - -fast-levenshtein@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - -faye-websocket@~0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - dependencies: - websocket-driver ">=0.5.1" - -figures@^1.0.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - -file-sync-cmp@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz#a5e7a8ffbfa493b43b923bbd4ca89a53b63b612b" - -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -findup-sync@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.3.0.tgz#37930aa5d816b777c03445e1966cc6790a4c0b16" - dependencies: - glob "~5.0.0" - -flat@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" - integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== - dependencies: - is-buffer "~2.0.3" - -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" - dependencies: - asynckit "^0.4.0" - combined-stream "1.0.6" - mime-types "^2.1.12" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - -gaze@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - dependencies: - globule "^1.0.0" - -get-caller-file@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - -getobject@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/getobject/-/getobject-0.1.0.tgz#047a449789fa160d018f5486ed91320b6ec7885c" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - dependencies: - assert-plus "^1.0.0" - -glob@5.0.x, glob@~5.0.0: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.3: - version "7.1.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.5, glob@~7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@~7.0.0: - version "7.0.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^9.0.0: - version "9.16.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.16.0.tgz#63e903658171ec2d9f51b1d31de5e2b8dc01fb80" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - -globule@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" - dependencies: - glob "~7.1.1" - lodash "~4.17.10" - minimatch "~3.0.2" - -graceful-fs@^4.1.2: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - -"graceful-readlink@>= 1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" - -growl@1.10.5: - version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== - -grunt-babel@~6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/grunt-babel/-/grunt-babel-6.0.0.tgz#378189b487de1168c4c4a9fc88dd6005b35df960" - dependencies: - babel-core "^6.0.12" - -grunt-cli@^1.2.0, grunt-cli@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/grunt-cli/-/grunt-cli-1.2.0.tgz#562b119ebb069ddb464ace2845501be97b35b6a8" - dependencies: - findup-sync "~0.3.0" - grunt-known-options "~1.1.0" - nopt "~3.0.6" - resolve "~1.1.0" - -grunt-contrib-clean@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz#564abf2d0378a983a15b9e3f30ee75b738c40638" - dependencies: - async "^1.5.2" - rimraf "^2.5.1" - -grunt-contrib-copy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz#7060c6581e904b8ab0d00f076e0a8f6e3e7c3573" - dependencies: - chalk "^1.1.1" - file-sync-cmp "^0.1.0" - -grunt-contrib-uglify@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/grunt-contrib-uglify/-/grunt-contrib-uglify-2.3.0.tgz#b3d0260ebdd6cefa12ff2f8e9e1e259f7de4216f" - dependencies: - chalk "^1.0.0" - maxmin "^1.1.0" - object.assign "^4.0.4" - uglify-js "~2.8.21" - uri-path "^1.0.0" - -grunt-contrib-watch@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz#c143ca5b824b288a024b856639a5345aedb78ed4" - dependencies: - async "^2.6.0" - gaze "^1.1.0" - lodash "^4.17.10" - tiny-lr "^1.1.1" - -grunt-known-options@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/grunt-known-options/-/grunt-known-options-1.1.0.tgz#a4274eeb32fa765da5a7a3b1712617ce3b144149" - -grunt-legacy-log-utils@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz#d2f442c7c0150065d9004b08fd7410d37519194e" - dependencies: - chalk "~2.4.1" - lodash "~4.17.10" - -grunt-legacy-log@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz#c8cd2c6c81a4465b9bbf2d874d963fef7a59ffb9" - dependencies: - colors "~1.1.2" - grunt-legacy-log-utils "~2.0.0" - hooker "~0.2.3" - lodash "~4.17.5" - -grunt-legacy-util@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz#e10624e7c86034e5b870c8a8616743f0a0845e42" - dependencies: - async "~1.5.2" - exit "~0.1.1" - getobject "~0.1.0" - hooker "~0.2.3" - lodash "~4.17.10" - underscore.string "~3.3.4" - which "~1.3.0" - -grunt-mocha-test@^0.13.2: - version "0.13.3" - resolved "https://registry.yarnpkg.com/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz#9028472b615bda6ddeaa7b30a5a164e9805de005" - dependencies: - hooker "^0.2.3" - mkdirp "^0.5.0" - -grunt-systemjs-builder@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/grunt-systemjs-builder/-/grunt-systemjs-builder-1.0.0.tgz#5d8e7cbeca5b35e2b7b6bd002e9a9d7e03d7decd" - dependencies: - systemjs-builder "0.14.11 - 0.16.x" - -grunt@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/grunt/-/grunt-1.0.4.tgz#c799883945a53a3d07622e0737c8f70bfe19eb38" - integrity sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ== - dependencies: - coffeescript "~1.10.0" - dateformat "~1.0.12" - eventemitter2 "~0.4.13" - exit "~0.1.1" - findup-sync "~0.3.0" - glob "~7.0.0" - grunt-cli "~1.2.0" - grunt-known-options "~1.1.0" - grunt-legacy-log "~2.0.0" - grunt-legacy-util "~1.1.1" - iconv-lite "~0.4.13" - js-yaml "~3.13.0" - minimatch "~3.0.2" - mkdirp "~0.5.1" - nopt "~3.0.6" - path-is-absolute "~1.0.0" - rimraf "~2.6.2" - -gzip-size@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-1.0.0.tgz#66cf8b101047227b95bace6ea1da0c177ed5c22f" - dependencies: - browserify-zlib "^0.1.4" - concat-stream "^1.4.1" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - -har-validator@~5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" - dependencies: - ajv "^5.1.0" - har-schema "^2.0.0" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - dependencies: - ansi-regex "^2.0.0" - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - -has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" - -has-symbols@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -he@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -hooker@^0.2.3, hooker@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/hooker/-/hooker-0.2.3.tgz#b834f723cc4a242aa65963459df6d984c5d3d959" - -hosted-git-info@^2.1.4: - version "2.6.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.1.tgz#6e4cee78b01bb849dcf93527708c69fdbee410df" - -html-encoding-sniffer@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - dependencies: - whatwg-encoding "^1.0.1" - -http-parser-js@>=0.4.0: - version "0.4.13" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.13.tgz#3bd6d6fde6e3172c9334c3b33b6c193d80fe1137" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - -iconv-lite@~0.4.13: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - dependencies: - safer-buffer ">= 2.1.2 < 3" - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@^2.0.3, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -invariant@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" - dependencies: - loose-envify "^1.0.0" - -invariant@^2.2.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - dependencies: - loose-envify "^1.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - -is-buffer@^1.0.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b" - -is-buffer@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.4: - version "1.1.5" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" - integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== - -is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-regex@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" - integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ== - dependencies: - has "^1.0.3" - -is-symbol@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - dependencies: - has-symbols "^1.0.1" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - -js-tokens@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - -js-yaml@3.13.1, js-yaml@~3.13.0: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -jsdom@~9.12.0: - version "9.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" - dependencies: - abab "^1.0.3" - acorn "^4.0.4" - acorn-globals "^3.1.0" - array-equal "^1.0.0" - content-type-parser "^1.0.1" - cssom ">= 0.3.2 < 0.4.0" - cssstyle ">= 0.2.37 < 0.3.0" - escodegen "^1.6.1" - html-encoding-sniffer "^1.0.1" - nwmatcher ">= 1.3.9 < 2.0.0" - parse5 "^1.5.1" - request "^2.79.0" - sax "^1.2.1" - symbol-tree "^3.2.1" - tough-cookie "^2.3.2" - webidl-conversions "^4.0.0" - whatwg-encoding "^1.0.1" - whatwg-url "^4.3.0" - xml-name-validator "^2.0.1" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - -jsprim@^1.2.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252" - dependencies: - extsprintf "1.0.2" - json-schema "0.2.3" - verror "1.3.6" - -kind-of@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" - dependencies: - is-buffer "^1.0.2" - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -livereload-js@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.3.0.tgz#c3ab22e8aaf5bf3505d80d098cbad67726548c9a" - -load-grunt-tasks@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/load-grunt-tasks/-/load-grunt-tasks-3.5.2.tgz#0728561180fd20ff8a6927505852fc58aaea0c88" - dependencies: - arrify "^1.0.0" - multimatch "^2.0.0" - pkg-up "^1.0.0" - resolve-pkg "^0.1.0" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash@^4.17.10, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4, lodash@^4.2.0, lodash@~4.17.10, lodash@~4.17.5: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -log-symbols@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== - dependencies: - chalk "^2.0.1" - -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" - -loose-envify@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - dependencies: - js-tokens "^3.0.0" - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - -maxmin@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/maxmin/-/maxmin-1.1.0.tgz#71365e84a99dd8f8b3f7d5fde2f00d1e7f73be61" - dependencies: - chalk "^1.0.0" - figures "^1.0.1" - gzip-size "^1.0.0" - pretty-bytes "^1.0.0" - -meow@^3.1.0, meow@^3.3.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -mime-db@~1.26.0: - version "1.26.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff" - -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - -mime-types@^2.1.12: - version "2.1.14" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee" - dependencies: - mime-db "~1.26.0" - -mime-types@~2.1.17: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - dependencies: - mime-db "~1.33.0" - -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" - dependencies: - brace-expansion "^1.0.0" - -minimatch@3.0.4, minimatch@^3.0.4, minimatch@~3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - -minimist@^1.1.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - dependencies: - minimist "0.0.8" - -mocha@^6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.2.tgz#5d8987e28940caf8957a7d7664b910dc5b2fea20" - integrity sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A== - dependencies: - ansi-colors "3.2.3" - browser-stdout "1.3.1" - debug "3.2.6" - diff "3.5.0" - escape-string-regexp "1.0.5" - find-up "3.0.0" - glob "7.1.3" - growl "1.10.5" - he "1.2.0" - js-yaml "3.13.1" - log-symbols "2.2.0" - minimatch "3.0.4" - mkdirp "0.5.1" - ms "2.1.1" - node-environment-flags "1.0.5" - object.assign "4.1.0" - strip-json-comments "2.0.1" - supports-color "6.0.0" - which "1.3.1" - wide-align "1.1.3" - yargs "13.3.0" - yargs-parser "13.1.1" - yargs-unparser "1.6.0" - -ms@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -multimatch@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" - dependencies: - array-differ "^1.0.0" - array-union "^1.0.1" - arrify "^1.0.0" - minimatch "^3.0.0" - -node-environment-flags@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" - integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== - dependencies: - object.getownpropertydescriptors "^2.0.3" - semver "^5.7.0" - -nopt@~3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - dependencies: - abbrev "1" - -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - -"nwmatcher@>= 1.3.9 < 2.0.0": - version "1.4.4" - resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.4.tgz#2285631f34a95f0d0395cd900c96ed39b58f346e" - -oauth-sign@~0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - -object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - -object-inspect@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" - integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== - -object-keys@^1.0.11, object-keys@^1.0.8: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - -object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@4.1.0, object.assign@^4.0.4, object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - dependencies: - wrappy "1" - -optionator@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.4" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - wordwrap "~1.0.0" - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - -p-limit@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" - integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== - dependencies: - p-try "^2.0.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -pako@~0.2.0: - version "0.2.9" - resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - dependencies: - error-ex "^1.2.0" - -parse5@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94" - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1, path-is-absolute@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - -pkg-up@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26" - dependencies: - find-up "^1.0.0" - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - -pretty-bytes@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84" - dependencies: - get-stdin "^4.0.1" - meow "^3.1.0" - -private@^0.1.6: - version "0.1.7" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" - -private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - -prunk@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/prunk/-/prunk-1.3.1.tgz#5c1f5615c218ac76621b4d8a97ec13717807756a" - -psl@^1.1.24: - version "1.1.28" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.28.tgz#4fb6ceb08a1e2214d4fd4de0ca22dae13740bc7b" - -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - -q@^1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - -qs@^6.4.0, qs@~6.5.1: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - -raw-body@~1.1.0: - version "1.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-1.1.7.tgz#1d027c2bfa116acc6623bca8f00016572a87d425" - dependencies: - bytes "1" - string_decoder "0.10" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -readable-stream@^2.2.2: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -regenerate@^1.2.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" - -regenerator-runtime@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e" - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" - dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" - private "^0.1.6" - -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - dependencies: - jsesc "~0.5.0" - -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" - -request@^2.79.0: - version "2.87.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.6.0" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.1" - forever-agent "~0.6.1" - form-data "~2.3.1" - har-validator "~5.0.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.17" - oauth-sign "~0.8.2" - performance-now "^2.1.0" - qs "~6.5.1" - safe-buffer "^5.1.1" - tough-cookie "~2.3.3" - tunnel-agent "^0.6.0" - uuid "^3.1.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - -resolve-from@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" - -resolve-pkg@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/resolve-pkg/-/resolve-pkg-0.1.0.tgz#02cc993410e2936962bd97166a1b077da9725531" - dependencies: - resolve-from "^2.0.0" - -resolve@~1.1.0: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" - dependencies: - align-text "^0.1.1" - -rimraf@^2.5.1, rimraf@~2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - dependencies: - glob "^7.0.5" - -rollup@^0.58.2: - version "0.58.2" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.58.2.tgz#2feddea8c0c022f3e74b35c48e3c21b3433803ce" - dependencies: - "@types/estree" "0.0.38" - "@types/node" "*" - -rsvp@^3.0.13: - version "3.3.3" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.3.3.tgz#34633caaf8bc66ceff4be3c2e1dffd032538a813" - -safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - -safe-json-parse@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-json-parse/-/safe-json-parse-1.0.1.tgz#3e76723e38dfdda13c9b1d29a1e07ffee4b30b57" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - -sax@^1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - -semver@^4.3.3: - version "4.3.6" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" - -semver@^5.7.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -set-blocking@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - dependencies: - source-map "^0.5.6" - -source-map-support@^0.4.2: - version "0.4.11" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322" - dependencies: - source-map "^0.5.3" - -source-map-support@~0.2.8: - version "0.2.10" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.2.10.tgz#ea5a3900a1c1cb25096a0ae8cc5c2b4b10ded3dc" - dependencies: - source-map "0.1.32" - -source-map@0.1.32: - version "0.1.32" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.5.0, source-map@^0.5.3, source-map@~0.5.1: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - -source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - -source-map@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" - dependencies: - amdefine ">=0.0.4" - -spdx-correct@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" - -sprintf-js@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -string-template@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" - -"string-width@^1.0.2 || 2": - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - -string.prototype.trimleft@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz#9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74" - integrity sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag== - dependencies: - define-properties "^1.1.3" - function-bind "^1.1.1" - -string.prototype.trimright@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz#440314b15996c866ce8a0341894d45186200c5d9" - integrity sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g== - dependencies: - define-properties "^1.1.3" - function-bind "^1.1.1" - -string_decoder@0.10: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - dependencies: - safe-buffer "~5.1.0" - -strip-ansi@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" - -strip-json-comments@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -supports-color@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" - integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== - dependencies: - has-flag "^3.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - -supports-color@^5.3.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" - dependencies: - has-flag "^3.0.0" - -symbol-tree@^3.2.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - -"systemjs-builder@0.14.11 - 0.16.x": - version "0.16.13" - resolved "https://registry.yarnpkg.com/systemjs-builder/-/systemjs-builder-0.16.13.tgz#02b47d03afd1e2f29562b11ec8bc13457e785c76" - dependencies: - babel-core "^6.24.1" - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-transform-amd-system-wrapper "^0.3.7" - babel-plugin-transform-cjs-system-wrapper "^0.6.2" - babel-plugin-transform-es2015-modules-systemjs "^6.6.5" - babel-plugin-transform-global-system-wrapper "^0.3.4" - babel-plugin-transform-system-register "^0.0.1" - bluebird "^3.3.4" - data-uri-to-buffer "0.0.4" - es6-template-strings "^2.0.0" - glob "^7.0.3" - mkdirp "^0.5.1" - rollup "^0.58.2" - source-map "^0.5.3" - systemjs "^0.19.46" - traceur "0.0.105" - uglify-js "^2.6.1" - -systemjs@^0.19.46: - version "0.19.47" - resolved "https://registry.yarnpkg.com/systemjs/-/systemjs-0.19.47.tgz#c8c93937180f3f5481c769cd2720763fb4a31c6f" - dependencies: - when "^3.7.5" - -tiny-lr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.1.1.tgz#9fa547412f238fedb068ee295af8b682c98b2aab" - dependencies: - body "^5.1.0" - debug "^3.1.0" - faye-websocket "~0.10.0" - livereload-js "^2.3.0" - object-assign "^4.1.0" - qs "^6.4.0" - -to-fast-properties@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - -tough-cookie@^2.3.2: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tough-cookie@~2.3.3: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - dependencies: - punycode "^1.4.1" - -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - -traceur@0.0.105: - version "0.0.105" - resolved "https://registry.yarnpkg.com/traceur/-/traceur-0.0.105.tgz#5cf9dee83d6b77861c3d6c44d53859aed7ab0479" - dependencies: - commander "2.9.x" - glob "5.0.x" - rsvp "^3.0.13" - semver "^4.3.3" - source-map-support "~0.2.8" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - dependencies: - prelude-ls "~1.1.2" - -type-detect@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" - -type-detect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -uglify-js@^2.6.1: - version "2.6.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf" - dependencies: - async "~0.2.6" - source-map "~0.5.1" - uglify-to-browserify "~1.0.0" - yargs "~3.10.0" - -uglify-js@~2.8.21: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" - dependencies: - source-map "~0.5.1" - yargs "~3.10.0" - optionalDependencies: - uglify-to-browserify "~1.0.0" - -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" - -underscore.string@~3.3.4: - version "3.3.5" - resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.5.tgz#fc2ad255b8bd309e239cbc5816fd23a9b7ea4023" - dependencies: - sprintf-js "^1.0.3" - util-deprecate "^1.0.2" - -uri-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/uri-path/-/uri-path-1.0.0.tgz#9747f018358933c31de0fccfd82d138e67262e32" - -util-deprecate@^1.0.2, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - -uuid@^3.1.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.0.tgz#b237147804881d7b86f40a7ff8f590f15c37de32" - -validate-npm-package-license@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -verror@1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" - dependencies: - extsprintf "1.0.2" - -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - -webidl-conversions@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -whatwg-encoding@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3" - dependencies: - iconv-lite "0.4.19" - -whatwg-url@^4.3.0: - version "4.8.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.8.0.tgz#d2981aa9148c1e00a41c5a6131166ab4683bbcc0" - dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" - -when@^3.7.5: - version "3.7.8" - resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@1.3.1, which@~1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - dependencies: - isexe "^2.0.0" - -wide-align@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" - -wordwrap@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" - -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== - dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -xml-name-validator@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" - -xtend@~4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - -y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yargs-parser@13.1.1, yargs-parser@^13.1.1: - version "13.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" - integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-unparser@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" - integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== - dependencies: - flat "^4.1.0" - lodash "^4.17.15" - yargs "^13.3.0" - -yargs@13.3.0, yargs@^13.3.0: - version "13.3.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" - integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.1" - -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0" - -yarn@^1.22.0: - version "1.22.0" - resolved "https://registry.yarnpkg.com/yarn/-/yarn-1.22.0.tgz#acf82906e36bcccd1ccab1cfb73b87509667c881" - integrity sha512-KMHP/Jq53jZKTY9iTUt3dIVl/be6UPs2INo96+BnZHLKxYNTfwMmlgHTaMWyGZoO74RI4AIFvnWhYrXq2USJkg== From 1cb69395f111b4167640a600fe6f38278e5d7406 Mon Sep 17 00:00:00 2001 From: Shuduo Sang Date: Thu, 20 Aug 2020 14:02:51 +0800 Subject: [PATCH 03/10] replace grafana with submodule --- .gitmodules | 3 +++ src/connector/grafanaplugin | 1 + 2 files changed, 4 insertions(+) create mode 160000 src/connector/grafanaplugin diff --git a/.gitmodules b/.gitmodules index 35aea3658b..7c84eac8a4 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "src/connector/go"] path = src/connector/go url = https://github.com/taosdata/driver-go +[submodule "src/connector/grafanaplugin"] + path = src/connector/grafanaplugin + url = https://github.com/taosdata/grafanaplugin diff --git a/src/connector/grafanaplugin b/src/connector/grafanaplugin new file mode 160000 index 0000000000..d598db167e --- /dev/null +++ b/src/connector/grafanaplugin @@ -0,0 +1 @@ +Subproject commit d598db167eb256fe67409b7bb3d0eb7fffc3ff8c From c96085808845a817d058ffcab364d4445f332c9d Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Thu, 20 Aug 2020 14:24:11 +0800 Subject: [PATCH 04/10] fix jdbc memory leaks. #3098 --- src/client/src/TSDBJNIConnector.c | 18 ++++++++++++++++++ .../com/taosdata/jdbc/TSDBJNIConnector.java | 6 ++++++ .../java/com/taosdata/jdbc/TSDBStatement.java | 18 +++++++++++++----- 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/src/client/src/TSDBJNIConnector.c b/src/client/src/TSDBJNIConnector.c index 0dd5e13181..b25f620508 100644 --- a/src/client/src/TSDBJNIConnector.c +++ b/src/client/src/TSDBJNIConnector.c @@ -335,6 +335,24 @@ JNIEXPORT jlong JNICALL Java_com_taosdata_jdbc_TSDBJNIConnector_getResultSetImp( return tres; } +JNIEXPORT jint JNICALL Java_com_taosdata_jdbc_TSDBJNIConnector_isUpdateQueryImp(JNIEnv *env, jobject jobj, jlong con, + jlong tres) { + TAOS *tscon = (TAOS *)con; + if (tscon == NULL) { + jniError("jobj:%p, connection is closed", jobj); + return JNI_CONNECTION_NULL; + } + + if ((void *)tres == NULL) { + jniError("jobj:%p, conn:%p, resultset is null", jobj, tscon); + return JNI_RESULT_SET_NULL; + } + + SSqlObj *pSql = (TAOS_RES *)tres; + + return (tscIsUpdateQuery(pSql)? 1:0); +} + JNIEXPORT jint JNICALL Java_com_taosdata_jdbc_TSDBJNIConnector_freeResultSetImp(JNIEnv *env, jobject jobj, jlong con, jlong res) { TAOS *tscon = (TAOS *)con; diff --git a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java index 25f7f8576d..0cd185de50 100755 --- a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java +++ b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBJNIConnector.java @@ -171,6 +171,12 @@ public class TSDBJNIConnector { } private native long getResultSetImp(long connection, long pSql); + + public boolean isUpdateQuery(long pSql) { + return isUpdateQueryImp(this.taos, pSql) == 1? true:false; + } + + private native long isUpdateQueryImp(long connection, long pSql); /** * Free resultset operation from C to release resultset pointer by JNI diff --git a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java index 54598212ed..075a351661 100644 --- a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java +++ b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java @@ -60,13 +60,21 @@ public class TSDBStatement implements Statement { if (resultSetPointer == TSDBConstants.JNI_CONNECTION_NULL) { this.connecter.freeResultSet(pSql); throw new SQLException(TSDBConstants.FixErrMsg(TSDBConstants.JNI_CONNECTION_NULL)); - } else if (resultSetPointer == TSDBConstants.JNI_NULL_POINTER) { -// create/insert/update/del/alter + } + + // create/insert/update/delete/alter + if (resultSetPointer == TSDBConstants.JNI_NULL_POINTER) { this.connecter.freeResultSet(pSql); return null; - } else { - return new TSDBResultSet(this.connecter, resultSetPointer); } + + if (!this.connecter.isUpdateQuery(pSql)) { + return new TSDBResultSet(this.connecter, resultSetPointer); + } else { + this.connecter.freeResultSet(pSql); + return null; + } + } public int executeUpdate(String sql) throws SQLException { @@ -81,7 +89,7 @@ public class TSDBStatement implements Statement { if (resultSetPointer == TSDBConstants.JNI_CONNECTION_NULL) { this.connecter.freeResultSet(pSql); throw new SQLException(TSDBConstants.FixErrMsg(TSDBConstants.JNI_CONNECTION_NULL)); - } + } int num = this.connecter.getAffectedRows(pSql); this.connecter.freeResultSet(pSql); From 111607e5ca65caf3461648a0c481cd39cfce10d6 Mon Sep 17 00:00:00 2001 From: Shuduo Sang Date: Thu, 20 Aug 2020 14:38:00 +0800 Subject: [PATCH 05/10] modify packaging tools for grafana plugin changed to submodule. --- packaging/deb/makedeb.sh | 2 +- packaging/rpm/tdengine.spec | 2 +- packaging/tools/make_install.sh | 2 +- packaging/tools/makeclient.sh | 2 +- packaging/tools/makepkg.sh | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packaging/deb/makedeb.sh b/packaging/deb/makedeb.sh index 7bcb856291..f05d7f3414 100755 --- a/packaging/deb/makedeb.sh +++ b/packaging/deb/makedeb.sh @@ -54,7 +54,7 @@ cp ${compile_dir}/build/lib/${libfile} ${pkg_dir}${install_home_pat cp ${compile_dir}/../src/inc/taos.h ${pkg_dir}${install_home_path}/include cp ${compile_dir}/../src/inc/taoserror.h ${pkg_dir}${install_home_path}/include cp -r ${top_dir}/tests/examples/* ${pkg_dir}${install_home_path}/examples -cp -r ${top_dir}/src/connector/grafana ${pkg_dir}${install_home_path}/connector +cp -r ${top_dir}/src/connector/grafanaplugin ${pkg_dir}${install_home_path}/connector cp -r ${top_dir}/src/connector/python ${pkg_dir}${install_home_path}/connector cp -r ${top_dir}/src/connector/go ${pkg_dir}${install_home_path}/connector cp ${compile_dir}/build/lib/taos-jdbcdriver*dist.* ${pkg_dir}${install_home_path}/connector diff --git a/packaging/rpm/tdengine.spec b/packaging/rpm/tdengine.spec index 2fac159b04..a8303c594a 100644 --- a/packaging/rpm/tdengine.spec +++ b/packaging/rpm/tdengine.spec @@ -61,7 +61,7 @@ cp %{_compiledir}/build/bin/taosdemo %{buildroot}%{homepath}/bin cp %{_compiledir}/build/lib/${libfile} %{buildroot}%{homepath}/driver cp %{_compiledir}/../src/inc/taos.h %{buildroot}%{homepath}/include cp %{_compiledir}/../src/inc/taoserror.h %{buildroot}%{homepath}/include -cp -r %{_compiledir}/../src/connector/grafana %{buildroot}%{homepath}/connector +cp -r %{_compiledir}/../src/connector/grafanaplugin %{buildroot}%{homepath}/connector cp -r %{_compiledir}/../src/connector/python %{buildroot}%{homepath}/connector cp -r %{_compiledir}/../src/connector/go %{buildroot}%{homepath}/connector cp %{_compiledir}/build/lib/taos-jdbcdriver*dist.* %{buildroot}%{homepath}/connector diff --git a/packaging/tools/make_install.sh b/packaging/tools/make_install.sh index 1a5c4d75b5..74aa1495fe 100755 --- a/packaging/tools/make_install.sh +++ b/packaging/tools/make_install.sh @@ -237,7 +237,7 @@ function install_data() { } function install_connector() { - ${csudo} cp -rf ${source_dir}/src/connector/grafana ${install_main_dir}/connector + ${csudo} cp -rf ${source_dir}/src/connector/grafanaplugin ${install_main_dir}/connector ${csudo} cp -rf ${source_dir}/src/connector/python ${install_main_dir}/connector ${csudo} cp -rf ${source_dir}/src/connector/go ${install_main_dir}/connector diff --git a/packaging/tools/makeclient.sh b/packaging/tools/makeclient.sh index 855d0b9c27..5fe4cf50dd 100755 --- a/packaging/tools/makeclient.sh +++ b/packaging/tools/makeclient.sh @@ -110,7 +110,7 @@ if [[ "$pagMode" != "lite" ]] && [[ "$cpuType" != "aarch32" ]]; then if [ "$osType" != "Darwin" ]; then cp ${build_dir}/lib/*.jar ${install_dir}/connector fi - cp -r ${connector_dir}/grafana ${install_dir}/connector/ + cp -r ${connector_dir}/grafanaplugin ${install_dir}/connector/ cp -r ${connector_dir}/python ${install_dir}/connector/ cp -r ${connector_dir}/go ${install_dir}/connector fi diff --git a/packaging/tools/makepkg.sh b/packaging/tools/makepkg.sh index 16e0354dcf..796f39ccc0 100755 --- a/packaging/tools/makepkg.sh +++ b/packaging/tools/makepkg.sh @@ -123,7 +123,7 @@ connector_dir="${code_dir}/connector" mkdir -p ${install_dir}/connector if [[ "$pagMode" != "lite" ]] && [[ "$cpuType" != "aarch32" ]]; then cp ${build_dir}/lib/*.jar ${install_dir}/connector - cp -r ${connector_dir}/grafana ${install_dir}/connector/ + cp -r ${connector_dir}/grafanaplugin ${install_dir}/connector/ cp -r ${connector_dir}/python ${install_dir}/connector/ cp -r ${connector_dir}/go ${install_dir}/connector fi From fee9f7404070d6ff0d17cb4bde07eef86cbf2ad5 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Thu, 20 Aug 2020 15:01:09 +0800 Subject: [PATCH 06/10] fix jdbc memory leaks. #3098 --- .../src/main/java/com/taosdata/jdbc/TSDBStatement.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java index 075a351661..a36f7c67a0 100644 --- a/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java +++ b/src/connector/jdbc/src/main/java/com/taosdata/jdbc/TSDBStatement.java @@ -33,6 +33,7 @@ public class TSDBStatement implements Statement { * Status of current statement */ private boolean isClosed = true; + private int affectedRows = 0; TSDBStatement(TSDBJNIConnector connecter) { this.connecter = connecter; @@ -91,9 +92,10 @@ public class TSDBStatement implements Statement { throw new SQLException(TSDBConstants.FixErrMsg(TSDBConstants.JNI_CONNECTION_NULL)); } - int num = this.connecter.getAffectedRows(pSql); + this.affectedRows = this.connecter.getAffectedRows(pSql); this.connecter.freeResultSet(pSql); - return num; + + return this.affectedRows; } public String getErrorMsg(long pSql) { @@ -190,7 +192,8 @@ public class TSDBStatement implements Statement { if (isClosed) { throw new SQLException("Invalid method call on a closed statement."); } - return this.connecter.getAffectedRows(this.pSql); + + return this.affectedRows; } public boolean getMoreResults() throws SQLException { From 4104f7f43465e786687a6e5f052aadded59b1273 Mon Sep 17 00:00:00 2001 From: Hui Li Date: Thu, 20 Aug 2020 15:35:00 +0800 Subject: [PATCH 07/10] [TD-1190] --- packaging/tools/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging/tools/install.sh b/packaging/tools/install.sh index f27595a356..6f54993f91 100644 --- a/packaging/tools/install.sh +++ b/packaging/tools/install.sh @@ -446,7 +446,7 @@ function install_service_on_systemd() { ${csudo} bash -c "echo >> ${tarbitratord_service_config}" ${csudo} bash -c "echo '[Install]' >> ${tarbitratord_service_config}" ${csudo} bash -c "echo 'WantedBy=multi-user.target' >> ${tarbitratord_service_config}" - ${csudo} systemctl enable tarbitratord + # ${csudo} systemctl enable tarbitratord nginx_service_config="${service_config_dir}/nginxd.service" ${csudo} bash -c "echo '[Unit]' >> ${nginx_service_config}" From ce840b9de59116047045aa56335ecfe9fa18e2cf Mon Sep 17 00:00:00 2001 From: Hui Li Date: Thu, 20 Aug 2020 16:20:24 +0800 Subject: [PATCH 08/10] [update ver info] --- src/util/src/version.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/util/src/version.c b/src/util/src/version.c index 90c3b5452d..ac5de90dc8 100644 --- a/src/util/src/version.c +++ b/src/util/src/version.c @@ -1,7 +1,7 @@ -char version[12] = "2.0.1.0"; +char version[12] = "2.0.1.1"; char compatible_version[12] = "2.0.0.0"; -char gitinfo[48] = "7ac6c2b8de3cd66e180132fc1cf77715237308a1"; -char gitinfoOfInternal[48] = "e1e64838ece2b6dbe964ec3a39953455f354d930"; -char buildinfo[64] = "Built by root at 2020-08-17 11:13"; +char gitinfo[48] = "ae1966332948147bacce3d32f9ad539ab8721db2"; +char gitinfoOfInternal[48] = "bf53767db56cedb1c484df83a1f10536f12647ad"; +char buildinfo[64] = "Built by root at 2020-08-20 15:46"; -void libtaos_2_0_1_0_Linux_x64() {}; +void libtaos_2_0_1_1_Linux_x64() {}; From 94c11e0f6759b5d6437e77f0e86119c50d91b38b Mon Sep 17 00:00:00 2001 From: Hui Li Date: Thu, 20 Aug 2020 16:37:35 +0800 Subject: [PATCH 09/10] [TD-1162] --- CMakeLists.txt | 1 + cmake/input.inc | 5 +++++ packaging/release.sh | 13 ++++++++++--- src/cq/CMakeLists.txt | 6 +++++- src/dnode/CMakeLists.txt | 8 ++++++-- src/kit/shell/CMakeLists.txt | 8 ++++---- src/kit/taosdemo/CMakeLists.txt | 8 ++++---- src/plugins/http/CMakeLists.txt | 7 ++++++- src/plugins/monitor/CMakeLists.txt | 7 ++++++- src/plugins/mqtt/CMakeLists.txt | 6 +++++- 10 files changed, 52 insertions(+), 17 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bc6a888f9d..bfb8e902a8 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,6 +18,7 @@ SET(TD_COVER FALSE) SET(TD_MEM_CHECK FALSE) SET(TD_PAGMODE_LITE FALSE) +SET(TD_SOMODE_STATIC FALSE) SET(TD_GODLL FALSE) SET(TD_COMMUNITY_DIR ${PROJECT_SOURCE_DIR}) diff --git a/cmake/input.inc b/cmake/input.inc index e963e20240..0235ba42d3 100755 --- a/cmake/input.inc +++ b/cmake/input.inc @@ -22,6 +22,11 @@ IF (${PAGMODE} MATCHES "lite") MESSAGE(STATUS "Build with pagmode lite") ENDIF () +IF (${SOMODE} MATCHES "static") + SET(TD_SOMODE_STATIC TRUE) + MESSAGE(STATUS "Link so using static mode") +ENDIF () + IF (${DLLTYPE} MATCHES "go") SET(TD_GODLL TRUE) MESSAGE(STATUS "input dll type: " ${DLLTYPE}) diff --git a/packaging/release.sh b/packaging/release.sh index 2302b45875..198b2ce420 100755 --- a/packaging/release.sh +++ b/packaging/release.sh @@ -10,6 +10,7 @@ set -e # -o [Linux | Kylin | Alpine | Raspberrypi | Darwin | Windows | ...] # -V [stable | beta] # -l [full | lite] +# -s [static | dynamic] # -n [2.0.0.3] # set parameters by default value @@ -18,9 +19,10 @@ verType=stable # [stable, beta] cpuType=x64 # [aarch32 | aarch64 | x64 | x86 | mips64 ...] osType=Linux # [Linux | Kylin | Alpine | Raspberrypi | Darwin | Windows | ...] pagMode=full # [full | lite] +soMode=dynamic # [static | dynamic] verNumber="" -while getopts "hv:V:c:o:l:n:" arg +while getopts "hv:V:c:o:l:s:n:" arg do case $arg in v) @@ -39,6 +41,10 @@ do #echo "pagMode=$OPTARG" pagMode=$(echo $OPTARG) ;; + s) + #echo "soMode=$OPTARG" + soMode=$(echo $OPTARG) + ;; n) #echo "verNumber=$OPTARG" verNumber=$(echo $OPTARG) @@ -53,6 +59,7 @@ do echo " -o [Linux | Kylin | Alpine | Raspberrypi | Darwin | Windows | ...] " echo " -V [stable | beta] " echo " -l [full | lite] " + echo " -s [static | dynamic] " echo " -n [version number] " exit 0 ;; @@ -63,7 +70,7 @@ do esac done -echo "verMode=${verMode} verType=${verType} cpuType=${cpuType} osType=${osType} pagMode=${pagMode} verNumber=${verNumber}" +echo "verMode=${verMode} verType=${verType} cpuType=${cpuType} osType=${osType} pagMode=${pagMode} soMode=${soMode} verNumber=${verNumber}" curr_dir=$(pwd) @@ -223,7 +230,7 @@ cd ${compile_dir} # check support cpu type if [[ "$cpuType" == "x64" ]] || [[ "$cpuType" == "aarch64" ]] || [[ "$cpuType" == "aarch32" ]] || [[ "$cpuType" == "mips64" ]] ; then if [ "$verMode" != "cluster" ]; then - cmake ../ -DCPUTYPE=${cpuType} -DPAGMODE=${pagMode} + cmake ../ -DCPUTYPE=${cpuType} -DPAGMODE=${pagMode} -DSOMODE=${soMode} else cmake ../../ -DCPUTYPE=${cpuType} fi diff --git a/src/cq/CMakeLists.txt b/src/cq/CMakeLists.txt index 4e63cd4953..db366639ef 100644 --- a/src/cq/CMakeLists.txt +++ b/src/cq/CMakeLists.txt @@ -6,6 +6,10 @@ AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SRC) IF (TD_LINUX) ADD_LIBRARY(tcq ${SRC}) - TARGET_LINK_LIBRARIES(tcq tutil common taos) + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(tcq tutil common taos_static) + ELSE () + TARGET_LINK_LIBRARIES(tcq tutil common taos) + ENDIF () ADD_SUBDIRECTORY(test) ENDIF () diff --git a/src/dnode/CMakeLists.txt b/src/dnode/CMakeLists.txt index 032e12624f..24a109dd29 100644 --- a/src/dnode/CMakeLists.txt +++ b/src/dnode/CMakeLists.txt @@ -11,7 +11,11 @@ AUX_SOURCE_DIRECTORY(src SRC) IF (TD_LINUX) ADD_EXECUTABLE(taosd ${SRC}) - TARGET_LINK_LIBRARIES(taosd mnode taos monitor http mqtt tsdb twal vnode cJson lz4 balance sync) + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(taosd mnode taos_static monitor http mqtt tsdb twal vnode cJson lz4 balance sync) + ELSE () + TARGET_LINK_LIBRARIES(taosd mnode taos monitor http mqtt tsdb twal vnode cJson lz4 balance sync) + ENDIF () IF (TD_ACCOUNT) TARGET_LINK_LIBRARIES(taosd account) @@ -35,4 +39,4 @@ IF (TD_LINUX) COMMAND ${CMAKE_COMMAND} -E echo charset UTF-8 >> ${TD_TESTS_OUTPUT_DIR}/cfg/taos.cfg COMMENT "prepare taosd environment") ADD_CUSTOM_TARGET(${PREPARE_ENV_TARGET} ALL WORKING_DIRECTORY ${TD_EXECUTABLE_OUTPUT_PATH} DEPENDS ${PREPARE_ENV_CMD}) -ENDIF () \ No newline at end of file +ENDIF () diff --git a/src/kit/shell/CMakeLists.txt b/src/kit/shell/CMakeLists.txt index 76af19f481..0305d9f1cc 100644 --- a/src/kit/shell/CMakeLists.txt +++ b/src/kit/shell/CMakeLists.txt @@ -11,11 +11,11 @@ IF (TD_LINUX) LIST(REMOVE_ITEM SRC ./src/shellDarwin.c) ADD_EXECUTABLE(shell ${SRC}) -# IF (TD_PAGMODE_LITE) + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(shell taos_static) + ELSE () TARGET_LINK_LIBRARIES(shell taos) -# ELSE () -# TARGET_LINK_LIBRARIES(shell taos_static) -# ENDIF () + ENDIF () SET_TARGET_PROPERTIES(shell PROPERTIES OUTPUT_NAME taos) ELSEIF (TD_WINDOWS) diff --git a/src/kit/taosdemo/CMakeLists.txt b/src/kit/taosdemo/CMakeLists.txt index 1698c85915..ab02bdb64d 100644 --- a/src/kit/taosdemo/CMakeLists.txt +++ b/src/kit/taosdemo/CMakeLists.txt @@ -8,11 +8,11 @@ IF (TD_LINUX) AUX_SOURCE_DIRECTORY(. SRC) ADD_EXECUTABLE(taosdemo ${SRC}) -# IF (TD_PAGMODE_LITE) + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(taosdemo taos_static) + ELSE () TARGET_LINK_LIBRARIES(taosdemo taos) -# ELSE () -# TARGET_LINK_LIBRARIES(taosdemo taos_static) -# ENDIF () + ENDIF () ELSEIF (TD_WINDOWS) AUX_SOURCE_DIRECTORY(. SRC) ADD_EXECUTABLE(taosdemo ${SRC}) diff --git a/src/plugins/http/CMakeLists.txt b/src/plugins/http/CMakeLists.txt index 94f5305f28..2c3cbf636f 100644 --- a/src/plugins/http/CMakeLists.txt +++ b/src/plugins/http/CMakeLists.txt @@ -11,7 +11,12 @@ AUX_SOURCE_DIRECTORY(src SRC) IF (TD_LINUX) ADD_LIBRARY(http ${SRC}) - TARGET_LINK_LIBRARIES(http taos z) + + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(http taos_static z) + ELSE () + TARGET_LINK_LIBRARIES(http taos z) + ENDIF () IF (TD_ADMIN) TARGET_LINK_LIBRARIES(http admin) diff --git a/src/plugins/monitor/CMakeLists.txt b/src/plugins/monitor/CMakeLists.txt index ba30edd0e4..26a7775e9c 100644 --- a/src/plugins/monitor/CMakeLists.txt +++ b/src/plugins/monitor/CMakeLists.txt @@ -8,5 +8,10 @@ IF (TD_LINUX) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/client/inc) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/query/inc) ADD_LIBRARY(monitor ${SRC}) - TARGET_LINK_LIBRARIES(monitor taos) + + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(monitor taos_static) + ELSE () + TARGET_LINK_LIBRARIES(monitor taos) + ENDIF () ENDIF () diff --git a/src/plugins/mqtt/CMakeLists.txt b/src/plugins/mqtt/CMakeLists.txt index 72312ffcec..2467af588c 100644 --- a/src/plugins/mqtt/CMakeLists.txt +++ b/src/plugins/mqtt/CMakeLists.txt @@ -10,8 +10,12 @@ IF (TD_LINUX) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/MQTT-C/include) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/MQTT-C/examples/templates) ADD_LIBRARY(mqtt ${SRC}) - TARGET_LINK_LIBRARIES(mqtt taos cJson mqttc) + IF (TD_SOMODE_STATIC) + TARGET_LINK_LIBRARIES(mqtt taos_static cJson mqttc) + ELSE () + TARGET_LINK_LIBRARIES(mqtt taos cJson mqttc) + ENDIF () IF (TD_ADMIN) TARGET_LINK_LIBRARIES(mqtt admin cJson) ENDIF () From e2a18afc76eff0f4eedd769b3a35d23bd813177d Mon Sep 17 00:00:00 2001 From: Hui Li Date: Thu, 20 Aug 2020 18:28:55 +0800 Subject: [PATCH 10/10] [TD-1162] --- packaging/release.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging/release.sh b/packaging/release.sh index 198b2ce420..dceb879126 100755 --- a/packaging/release.sh +++ b/packaging/release.sh @@ -232,7 +232,7 @@ if [[ "$cpuType" == "x64" ]] || [[ "$cpuType" == "aarch64" ]] || [[ "$cpuType" = if [ "$verMode" != "cluster" ]; then cmake ../ -DCPUTYPE=${cpuType} -DPAGMODE=${pagMode} -DSOMODE=${soMode} else - cmake ../../ -DCPUTYPE=${cpuType} + cmake ../../ -DCPUTYPE=${cpuType} -DSOMODE=${soMode} fi else echo "input cpuType=${cpuType} error!!!"