From 6fbd6f52ec78a11e7f91d1e8e55d293dc84ef267 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Canna=C3=B2?= Date: Tue, 14 Nov 2017 01:29:58 +0100 Subject: [PATCH] First implementation of web interface --- .gitignore | 2 +- deps/Makefile | 10 +- deps/libmicrohttpd/libmicrohttpd | 1 + .../libmicrohttpd/libmicrohttpd-0.9.55.tar.gz | Bin 0 -> 1308328 bytes include/MySQL_Thread.h | 2 +- include/ProxySQL_HTTP_Server.hpp | 27 ++ include/ProxySQL_Statistics.hpp | 63 +++ include/cpp.h | 2 + include/proxysql_admin.h | 12 + include/proxysql_glovars.hpp | 1 + lib/Chart_bundle_js.cpp | 1 + lib/Makefile | 7 +- lib/MySQL_Thread.cpp | 8 +- lib/ProxySQL_Admin.cpp | 340 +++++++++++++- lib/ProxySQL_HTTP_Server.cpp | 435 +++++++++++++++++ lib/ProxySQL_Statistics.cpp | 436 ++++++++++++++++++ src/Makefile | 12 +- src/main.cpp | 9 + 18 files changed, 1345 insertions(+), 23 deletions(-) create mode 120000 deps/libmicrohttpd/libmicrohttpd create mode 100644 deps/libmicrohttpd/libmicrohttpd-0.9.55.tar.gz create mode 100644 include/ProxySQL_HTTP_Server.hpp create mode 100644 include/ProxySQL_Statistics.hpp create mode 100644 lib/Chart_bundle_js.cpp create mode 100644 lib/ProxySQL_HTTP_Server.cpp create mode 100644 lib/ProxySQL_Statistics.cpp diff --git a/.gitignore b/.gitignore index 5ce1a61c7..5e6e16e60 100644 --- a/.gitignore +++ b/.gitignore @@ -95,7 +95,7 @@ deps/memcached/memcached-1.4.20/ deps/libconfig/libconfig-1.4.9/ #libmicrohttpd -deps/libmicrohttpd/libmicrohttpd-0.9.52/ +deps/libmicrohttpd/libmicrohttpd-0.9.55/ #clickhouse deps/clickhouse-cpp/clickhouse-cpp/ diff --git a/deps/Makefile b/deps/Makefile index a9c5830da..e6ad7dba9 100644 --- a/deps/Makefile +++ b/deps/Makefile @@ -11,12 +11,17 @@ endif PROXYSQLCLICKHOUSE := $(shell echo $(PROXYSQLCLICKHOUSE)) ifeq ($(PROXYSQLCLICKHOUSE),1) -default: libconfig libdaemon jemalloc mariadb_client re2 sqlite3 pcre clickhouse-cpp lz4 cityhash +default: libconfig libdaemon jemalloc mariadb_client re2 sqlite3 pcre clickhouse-cpp lz4 cityhash microhttpd else -default: libconfig libdaemon jemalloc mariadb_client re2 sqlite3 pcre +default: libconfig libdaemon jemalloc mariadb_client re2 sqlite3 pcre microhttpd endif .PHONY: default +libmicrohttpd/libmicrohttpd/src/microhttpd/.libs/libmicrohttpd.a: + cd libmicrohttpd && rm -rf libmicrohttpd-0.9.55 || true + cd libmicrohttpd && tar -zxf libmicrohttpd-0.9.55.tar.gz + cd libmicrohttpd/libmicrohttpd && ./configure && CC=${CC} CXX=${CXX} ${MAKE} +microhttpd: libmicrohttpd/libmicrohttpd/src/microhttpd/.libs/libmicrohttpd.a cityhash/cityhash/src/.libs/libcityhash.a: cd cityhash && rm -rf cityhash || true @@ -127,5 +132,6 @@ cleanall: cd sqlite3/sqlite3 && rm -rf * || true cd clickhouse-cpp/clickhouse-cpp && rm -rf * || true cd lz4 && rm -rf lz4-1.7.5 || true + cd libmicrohttpd && rm -rf libmicrohttpd-0.9.55 || true .PHONY: cleanall diff --git a/deps/libmicrohttpd/libmicrohttpd b/deps/libmicrohttpd/libmicrohttpd new file mode 120000 index 000000000..9c350c309 --- /dev/null +++ b/deps/libmicrohttpd/libmicrohttpd @@ -0,0 +1 @@ +libmicrohttpd-0.9.55 \ No newline at end of file diff --git a/deps/libmicrohttpd/libmicrohttpd-0.9.55.tar.gz b/deps/libmicrohttpd/libmicrohttpd-0.9.55.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..34d66197f1bafe13f1211baa3c73a80bfae0f6ef GIT binary patch literal 1308328 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

}bg|-22vT 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%0AD_hvtd^3fwE+ik59 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̋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े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�>x2yp@(L4Wv}_=#v8X9E-nP}Cel%gV)S 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%0D|4+aE>xXUrvH%n~i*Pkt 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 z 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

dDkB%#GulJ=j~6U7 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℘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

DwtY{Kg4`2s-}J|-e83i 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[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 literal 0 HcmV?d00001 diff --git a/include/MySQL_Thread.h b/include/MySQL_Thread.h index c1183ad45..8315bc286 100644 --- a/include/MySQL_Thread.h +++ b/include/MySQL_Thread.h @@ -440,7 +440,7 @@ class MySQL_Threads_Handler void stop_listeners(); void signal_all_threads(unsigned char _c=0); SQLite3_result * SQL3_Processlist(); - SQLite3_result * SQL3_GlobalStatus(); + SQLite3_result * SQL3_GlobalStatus(bool _memory); bool kill_session(uint32_t _thread_session_id); unsigned long long get_total_mirror_queue(); unsigned long long get_total_backend_stmt_prepare(); diff --git a/include/ProxySQL_HTTP_Server.hpp b/include/ProxySQL_HTTP_Server.hpp new file mode 100644 index 000000000..416d8a20c --- /dev/null +++ b/include/ProxySQL_HTTP_Server.hpp @@ -0,0 +1,27 @@ +#ifndef CLASS_PROXYSQL_HTTP_SERVER_H +#define CLASS_PROXYSQL_HTTP_SERVER_H +#include "proxysql.h" +#include "cpp.h" +#include + +#define ProxySQL_HTTP_Server_Rate_Limit 100 + +class ProxySQL_HTTP_Server { + unsigned int page_sec; + time_t cur_time; + public: + struct { + } variables; + ProxySQL_HTTP_Server(); + ~ProxySQL_HTTP_Server(); + void init(); + int handler(void *cls, struct MHD_Connection *connection, const char *url, const char *method, const char *version, const char *upload_data, size_t *upload_data_size, void **ptr); + void print_version(); + std::string * generate_header(char *); + std::string * generate_canvas(char *); + std::string * generate_chart(char *chart_name, char *ts, int nsets, char **dname, char **llabel, char **values); + char *extract_values(SQLite3_result *result, int idx, bool relative, double mult=1); + char *extract_ts(SQLite3_result *result, bool relative); +}; + +#endif /* CLASS_PROXYSQL_HTTP_SERVER */ diff --git a/include/ProxySQL_Statistics.hpp b/include/ProxySQL_Statistics.hpp new file mode 100644 index 000000000..e86751790 --- /dev/null +++ b/include/ProxySQL_Statistics.hpp @@ -0,0 +1,63 @@ +#ifndef CLASS_PROXYSQL_STATISTICS_H +#define CLASS_PROXYSQL_STATISTICS_H +#include "proxysql.h" +#include "cpp.h" +//#include "thread.h" +//#include "wqueue.h" + + +#define STATSDB_SQLITE_TABLE_MYSQL_CONNECTIONS "CREATE TABLE mysql_connections (timestamp INT NOT NULL, Client_Connections_aborted INT NOT NULL, Client_Connections_connected INT NOT NULL, Client_Connections_created INT NOT NULL, Server_Connections_aborted INT NOT NULL, Server_Connections_connected INT NOT NULL, Server_Connections_created INT NOT NULL, ConnPool_get_conn_failure INT NOT NULL, ConnPool_get_conn_immediate INT NOT NULL, ConnPool_get_conn_success INT NOT NULL, Questions INT NOT NULL, Slow_queries INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_CPU "CREATE TABLE system_cpu (timestamp INT NOT NULL, tms_utime INT NOT NULL, tms_stime INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_MEMORY "CREATE TABLE system_memory (timestamp INT NOT NULL, allocated INT NOT NULL, resident INT NOT NULL, active INT NOT NULL, mapped INT NOT NULL, metadata INT NOT NULL, retained INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_MYSQL_CONNECTIONS_HOUR "CREATE TABLE mysql_connections_hour (timestamp INT NOT NULL, Client_Connections_aborted INT NOT NULL, Client_Connections_connected INT NOT NULL, Client_Connections_created INT NOT NULL, Server_Connections_aborted INT NOT NULL, Server_Connections_connected INT NOT NULL, Server_Connections_created INT NOT NULL, ConnPool_get_conn_failure INT NOT NULL, ConnPool_get_conn_immediate INT NOT NULL, ConnPool_get_conn_success INT NOT NULL, Questions INT NOT NULL, Slow_queries INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_CPU_HOUR "CREATE TABLE system_cpu_hour (timestamp INT NOT NULL, tms_utime INT NOT NULL, tms_stime INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_MEMORY_HOUR "CREATE TABLE system_memory_hour (timestamp INT NOT NULL, allocated INT NOT NULL, resident INT NOT NULL, active INT NOT NULL, mapped INT NOT NULL, metadata INT NOT NULL, retained INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_MYSQL_CONNECTIONS_DAY "CREATE TABLE mysql_connections_day (timestamp INT NOT NULL, Client_Connections_aborted INT NOT NULL, Client_Connections_connected INT NOT NULL, Client_Connections_created INT NOT NULL, Server_Connections_aborted INT NOT NULL, Server_Connections_connected INT NOT NULL, Server_Connections_created INT NOT NULL, ConnPool_get_conn_failure INT NOT NULL, ConnPool_get_conn_immediate INT NOT NULL, ConnPool_get_conn_success INT NOT NULL, Questions INT NOT NULL, Slow_queries INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_CPU_DAY "CREATE TABLE system_cpu_day (timestamp INT NOT NULL, tms_utime INT NOT NULL, tms_stime INT NOT NULL, PRIMARY KEY (timestamp))" + +#define STATSDB_SQLITE_TABLE_SYSTEM_MEMORY_DAY "CREATE TABLE system_memory_day (timestamp INT NOT NULL, allocated INT NOT NULL, resident INT NOT NULL, active INT NOT NULL, mapped INT NOT NULL, metadata INT NOT NULL, retained INT NOT NULL, PRIMARY KEY (timestamp))" + + +class ProxySQL_Statistics { + SQLite3DB *statsdb_mem; // internal statistics DB + std::vector *tables_defs_statsdb_mem; + std::vector *tables_defs_statsdb_disk; + // this is copied from ProxySQL Admin + void insert_into_tables_defs(std::vector *, const char *table_name, const char *table_def); + void drop_tables_defs(std::vector *tables_defs); + void check_and_build_standard_tables(SQLite3DB *db, std::vector *tables_defs); + unsigned long long next_timer_MySQL_Threads_Handler; + unsigned long long next_timer_system_cpu; + unsigned long long next_timer_system_memory; + public: + struct { + int stats_mysql_connection_pool; + int stats_mysql_connections; + int stats_mysql_query_cache; + int stats_system_cpu; + int stats_system_memory; + } variables; + ProxySQL_Statistics(); + ~ProxySQL_Statistics(); + SQLite3DB *statsdb_disk; // internal statistics DB + void init(); + void print_version(); + bool MySQL_Threads_Handler_timetoget(unsigned long long); + bool system_cpu_timetoget(unsigned long long); + bool system_memory_timetoget(unsigned long long); + void MySQL_Threads_Handler_sets(SQLite3_result *); + void system_cpu_sets(); + void system_memory_sets(); + SQLite3_result * get_mysql_metrics(); + SQLite3_result * get_system_cpu_metrics(); + SQLite3_result * get_system_memory_metrics(); +}; + +#endif /* CLASS_PROXYSQL_STATISTICS_H */ diff --git a/include/cpp.h b/include/cpp.h index f23e77b67..3db326b76 100644 --- a/include/cpp.h +++ b/include/cpp.h @@ -25,6 +25,8 @@ #include "MySQL_Logger.hpp" #include "MySQL_PreparedStatement.h" #include "ProxySQL_Cluster.hpp" // cluster +#include "ProxySQL_Statistics.hpp" // statistics +#include "ProxySQL_HTTP_Server.hpp" // HTTP server #undef swap #undef min #undef max diff --git a/include/proxysql_admin.h b/include/proxysql_admin.h index cb3cd5981..09f18a658 100644 --- a/include/proxysql_admin.h +++ b/include/proxysql_admin.h @@ -96,6 +96,15 @@ class ProxySQL_Admin { bool cluster_mysql_servers_save_to_disk; bool cluster_mysql_users_save_to_disk; bool cluster_proxysql_servers_save_to_disk; + int stats_mysql_connection_pool; + int stats_mysql_connections; + int stats_mysql_query_cache; + int stats_system_cpu; + int stats_system_memory; + bool web_enabled; + bool web_enabled_old; + int web_port; + int web_port_old; #ifdef DEBUG bool debug; #endif /* DEBUG */ @@ -179,6 +188,7 @@ class ProxySQL_Admin { SQLite3DB *statsdb; // in memory SQLite3DB *configdb; // on disk SQLite3DB *monitordb; // in memory + SQLite3DB *statsdb_disk; // on disk int pipefd[2]; void print_version(); bool init(); @@ -266,6 +276,8 @@ class ProxySQL_Admin { void load_sqliteserver_variables_to_runtime() { flush_sqliteserver_variables___database_to_runtime(admindb, true); } void save_sqliteserver_variables_from_runtime() { flush_sqliteserver_variables___runtime_to_database(admindb, true, true, false); } + ProxySQL_HTTP_Server *AdminHTTPServer; + #ifdef PROXYSQLCLICKHOUSE // ClickHouse void init_clickhouse_variables(); diff --git a/include/proxysql_glovars.hpp b/include/proxysql_glovars.hpp index 07cdb60e6..d5217aed4 100644 --- a/include/proxysql_glovars.hpp +++ b/include/proxysql_glovars.hpp @@ -51,6 +51,7 @@ class ProxySQL_GlobalVariables { char *config_file; char *datadir; char *admindb; + char *statsdb_disk; char *errorlog; char *pid; struct { diff --git a/lib/Chart_bundle_js.cpp b/lib/Chart_bundle_js.cpp new file mode 100644 index 000000000..e8a10dee2 --- /dev/null +++ b/lib/Chart_bundle_js.cpp @@ -0,0 +1 @@ +char * Chart_bundle_js_c = (char *) "/*!\n * Chart.js\n * http://chartjs.org/\n * Version: 2.7.1\n *\n * Copyright 2017 Nick Downie\n * Released under the MIT license\n * https://github.com/chartjs/Chart.js/blob/master/LICENSE.md\n */\n(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.Chart = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o lum2) {\n return (lum1 + 0.05) / (lum2 + 0.05);\n }\n return (lum2 + 0.05) / (lum1 + 0.05);\n },\n\n level: function (color2) {\n var contrastRatio = this.contrast(color2);\n if (contrastRatio >= 7.1) {\n return 'AAA';\n }\n\n return (contrastRatio >= 4.5) ? 'AA' : '';\n },\n\n dark: function () {\n // YIQ equation from http://24ways.org/2010/calculating-color-contrast\n var rgb = this.values.rgb;\n var yiq = (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1000;\n return yiq < 128;\n },\n\n light: function () {\n return !this.dark();\n },\n\n negate: function () {\n var rgb = [];\n for (var i = 0; i < 3; i++) {\n rgb[i] = 255 - this.values.rgb[i];\n }\n this.setValues('rgb', rgb);\n return this;\n },\n\n lighten: function (ratio) {\n var hsl = this.values.hsl;\n hsl[2] += hsl[2] * ratio;\n this.setValues('hsl', hsl);\n return this;\n },\n\n darken: function (ratio) {\n var hsl = this.values.hsl;\n hsl[2] -= hsl[2] * ratio;\n this.setValues('hsl', hsl);\n return this;\n },\n\n saturate: function (ratio) {\n var hsl = this.values.hsl;\n hsl[1] += hsl[1] * ratio;\n this.setValues('hsl', hsl);\n return this;\n },\n\n desaturate: function (ratio) {\n var hsl = this.values.hsl;\n hsl[1] -= hsl[1] * ratio;\n this.setValues('hsl', hsl);\n return this;\n },\n\n whiten: function (ratio) {\n var hwb = this.values.hwb;\n hwb[1] += hwb[1] * ratio;\n this.setValues('hwb', hwb);\n return this;\n },\n\n blacken: function (ratio) {\n var hwb = this.values.hwb;\n hwb[2] += hwb[2] * ratio;\n this.setValues('hwb', hwb);\n return this;\n },\n\n greyscale: function () {\n var rgb = this.values.rgb;\n // http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale\n var val = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;\n this.setValues('rgb', [val, val, val]);\n return this;\n },\n\n clearer: function (ratio) {\n var alpha = this.values.alpha;\n this.setValues('alpha', alpha - (alpha * ratio));\n return this;\n },\n\n opaquer: function (ratio) {\n var alpha = this.values.alpha;\n this.setValues('alpha', alpha + (alpha * ratio));\n return this;\n },\n\n rotate: function (degrees) {\n var hsl = this.values.hsl;\n var hue = (hsl[0] + degrees) % 360;\n hsl[0] = hue < 0 ? 360 + hue : hue;\n this.setValues('hsl', hsl);\n return this;\n },\n\n /**\n * Ported from sass implementation in C\n * https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209\n */\n mix: function (mixinColor, weight) {\n var color1 = this;\n var color2 = mixinColor;\n var p = weight === undefined ? 0.5 : weight;\n\n var w = 2 * p - 1;\n var a = color1.alpha() - color2.alpha();\n\n var w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2.0;\n var w2 = 1 - w1;\n\n return this\n .rgb(\n w1 * color1.red() + w2 * color2.red(),\n w1 * color1.green() + w2 * color2.green(),\n w1 * color1.blue() + w2 * color2.blue()\n )\n .alpha(color1.alpha() * p + color2.alpha() * (1 - p));\n },\n\n toJSON: function () {\n return this.rgb();\n },\n\n clone: function () {\n // NOTE(SB): using node-clone creates a dependency to Buffer when using browserify,\n // making the final build way to big to embed in Chart.js. So let's do it manually,\n // assuming that values to clone are 1 dimension arrays containing only numbers,\n // except 'alpha' which is a number.\n var result = new Color();\n var source = this.values;\n var target = result.values;\n var value, type;\n\n for (var prop in source) {\n if (source.hasOwnProperty(prop)) {\n value = source[prop];\n type = ({}).toString.call(value);\n if (type === '[object Array]') {\n target[prop] = value.slice(0);\n } else if (type === '[object Number]') {\n target[prop] = value;\n } else {\n console.error('unexpected color value:', value);\n }\n }\n }\n\n return result;\n }\n};\n\nColor.prototype.spaces = {\n rgb: ['red', 'green', 'blue'],\n hsl: ['hue', 'saturation', 'lightness'],\n hsv: ['hue', 'saturation', 'value'],\n hwb: ['hue', 'whiteness', 'blackness'],\n cmyk: ['cyan', 'magenta', 'yellow', 'black']\n};\n\nColor.prototype.maxes = {\n rgb: [255, 255, 255],\n hsl: [360, 100, 100],\n hsv: [360, 100, 100],\n hwb: [360, 100, 100],\n cmyk: [100, 100, 100, 100]\n};\n\nColor.prototype.getValues = function (space) {\n var values = this.values;\n var vals = {};\n\n for (var i = 0; i < space.length; i++) {\n vals[space.charAt(i)] = values[space][i];\n }\n\n if (values.alpha !== 1) {\n vals.a = values.alpha;\n }\n\n // {r: 255, g: 255, b: 255, a: 0.4}\n return vals;\n};\n\nColor.prototype.setValues = function (space, vals) {\n var values = this.values;\n var spaces = this.spaces;\n var maxes = this.maxes;\n var alpha = 1;\n var i;\n\n this.valid = true;\n\n if (space === 'alpha') {\n alpha = vals;\n } else if (vals.length) {\n // [10, 10, 10]\n values[space] = vals.slice(0, space.length);\n alpha = vals[space.length];\n } else if (vals[space.charAt(0)] !== undefined) {\n // {r: 10, g: 10, b: 10}\n for (i = 0; i < space.length; i++) {\n values[space][i] = vals[space.charAt(i)];\n }\n\n alpha = vals.a;\n } else if (vals[spaces[space][0]] !== undefined) {\n // {red: 10, green: 10, blue: 10}\n var chans = spaces[space];\n\n for (i = 0; i < space.length; i++) {\n values[space][i] = vals[chans[i]];\n }\n\n alpha = vals.alpha;\n }\n\n values.alpha = Math.max(0, Math.min(1, (alpha === undefined ? values.alpha : alpha)));\n\n if (space === 'alpha') {\n return false;\n }\n\n var capped;\n\n // cap values of the space prior converting all values\n for (i = 0; i < space.length; i++) {\n capped = Math.max(0, Math.min(maxes[space][i], values[space][i]));\n values[space][i] = Math.round(capped);\n }\n\n // convert to all the other color spaces\n for (var sname in spaces) {\n if (sname !== space) {\n values[sname] = convert[space][sname](values[space]);\n }\n }\n\n return true;\n};\n\nColor.prototype.setSpace = function (space, args) {\n var vals = args[0];\n\n if (vals === undefined) {\n // color.rgb()\n return this.getValues(space);\n }\n\n // color.rgb(10, 10, 10)\n if (typeof vals === 'number') {\n vals = Array.prototype.slice.call(args);\n }\n\n this.setValues(space, vals);\n return this;\n};\n\nColor.prototype.setChannel = function (space, index, val) {\n var svalues = this.values[space];\n if (val === undefined) {\n // color.red()\n return svalues[index];\n } else if (val === svalues[index]) {\n // color.red(color.red())\n return this;\n }\n\n // color.red(100)\n svalues[index] = val;\n this.setValues(space, svalues);\n\n return this;\n};\n\nif (typeof window !== 'undefined') {\n window.Color = Color;\n}\n\nmodule.exports = Color;\n\n},{\"1\":1,\"4\":4}],3:[function(require,module,exports){\n/* MIT license */\n\nmodule.exports = {\n rgb2hsl: rgb2hsl,\n rgb2hsv: rgb2hsv,\n rgb2hwb: rgb2hwb,\n rgb2cmyk: rgb2cmyk,\n rgb2keyword: rgb2keyword,\n rgb2xyz: rgb2xyz,\n rgb2lab: rgb2lab,\n rgb2lch: rgb2lch,\n\n hsl2rgb: hsl2rgb,\n hsl2hsv: hsl2hsv,\n hsl2hwb: hsl2hwb,\n hsl2cmyk: hsl2cmyk,\n hsl2keyword: hsl2keyword,\n\n hsv2rgb: hsv2rgb,\n hsv2hsl: hsv2hsl,\n hsv2hwb: hsv2hwb,\n hsv2cmyk: hsv2cmyk,\n hsv2keyword: hsv2keyword,\n\n hwb2rgb: hwb2rgb,\n hwb2hsl: hwb2hsl,\n hwb2hsv: hwb2hsv,\n hwb2cmyk: hwb2cmyk,\n hwb2keyword: hwb2keyword,\n\n cmyk2rgb: cmyk2rgb,\n cmyk2hsl: cmyk2hsl,\n cmyk2hsv: cmyk2hsv,\n cmyk2hwb: cmyk2hwb,\n cmyk2keyword: cmyk2keyword,\n\n keyword2rgb: keyword2rgb,\n keyword2hsl: keyword2hsl,\n keyword2hsv: keyword2hsv,\n keyword2hwb: keyword2hwb,\n keyword2cmyk: keyword2cmyk,\n keyword2lab: keyword2lab,\n keyword2xyz: keyword2xyz,\n\n xyz2rgb: xyz2rgb,\n xyz2lab: xyz2lab,\n xyz2lch: xyz2lch,\n\n lab2xyz: lab2xyz,\n lab2rgb: lab2rgb,\n lab2lch: lab2lch,\n\n lch2lab: lch2lab,\n lch2xyz: lch2xyz,\n lch2rgb: lch2rgb\n}\n\n\nfunction rgb2hsl(rgb) {\n var r = rgb[0]/255,\n g = rgb[1]/255,\n b = rgb[2]/255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n delta = max - min,\n h, s, l;\n\n if (max == min)\n h = 0;\n else if (r == max)\n h = (g - b) / delta;\n else if (g == max)\n h = 2 + (b - r) / delta;\n else if (b == max)\n h = 4 + (r - g)/ delta;\n\n h = Math.min(h * 60, 360);\n\n if (h < 0)\n h += 360;\n\n l = (min + max) / 2;\n\n if (max == min)\n s = 0;\n else if (l <= 0.5)\n s = delta / (max + min);\n else\n s = delta / (2 - max - min);\n\n return [h, s * 100, l * 100];\n}\n\nfunction rgb2hsv(rgb) {\n var r = rgb[0],\n g = rgb[1],\n b = rgb[2],\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n delta = max - min,\n h, s, v;\n\n if (max == 0)\n s = 0;\n else\n s = (delta/max * 1000)/10;\n\n if (max == min)\n h = 0;\n else if (r == max)\n h = (g - b) / delta;\n else if (g == max)\n h = 2 + (b - r) / delta;\n else if (b == max)\n h = 4 + (r - g) / delta;\n\n h = Math.min(h * 60, 360);\n\n if (h < 0)\n h += 360;\n\n v = ((max / 255) * 1000) / 10;\n\n return [h, s, v];\n}\n\nfunction rgb2hwb(rgb) {\n var r = rgb[0],\n g = rgb[1],\n b = rgb[2],\n h = rgb2hsl(rgb)[0],\n w = 1/255 * Math.min(r, Math.min(g, b)),\n b = 1 - 1/255 * Math.max(r, Math.max(g, b));\n\n return [h, w * 100, b * 100];\n}\n\nfunction rgb2cmyk(rgb) {\n var r = rgb[0] / 255,\n g = rgb[1] / 255,\n b = rgb[2] / 255,\n c, m, y, k;\n\n k = Math.min(1 - r, 1 - g, 1 - b);\n c = (1 - r - k) / (1 - k) || 0;\n m = (1 - g - k) / (1 - k) || 0;\n y = (1 - b - k) / (1 - k) || 0;\n return [c * 100, m * 100, y * 100, k * 100];\n}\n\nfunction rgb2keyword(rgb) {\n return reverseKeywords[JSON.stringify(rgb)];\n}\n\nfunction rgb2xyz(rgb) {\n var r = rgb[0] / 255,\n g = rgb[1] / 255,\n b = rgb[2] / 255;\n\n // assume sRGB\n r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4) : (r / 12.92);\n g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4) : (g / 12.92);\n b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4) : (b / 12.92);\n\n var x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n var y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n var z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n return [x * 100, y *100, z * 100];\n}\n\nfunction rgb2lab(rgb) {\n var xyz = rgb2xyz(rgb),\n x = xyz[0],\n y = xyz[1],\n z = xyz[2],\n l, a, b;\n\n x /= 95.047;\n y /= 100;\n z /= 108.883;\n\n x = x > 0.008856 ? Math.pow(x, 1/3) : (7.787 * x) + (16 / 116);\n y = y > 0.008856 ? Math.pow(y, 1/3) : (7.787 * y) + (16 / 116);\n z = z > 0.008856 ? Math.pow(z, 1/3) : (7.787 * z) + (16 / 116);\n\n l = (116 * y) - 16;\n a = 500 * (x - y);\n b = 200 * (y - z);\n\n return [l, a, b];\n}\n\nfunction rgb2lch(args) {\n return lab2lch(rgb2lab(args));\n}\n\nfunction hsl2rgb(hsl) {\n var h = hsl[0] / 360,\n s = hsl[1] / 100,\n l = hsl[2] / 100,\n t1, t2, t3, rgb, val;\n\n if (s == 0) {\n val = l * 255;\n return [val, val, val];\n }\n\n if (l < 0.5)\n t2 = l * (1 + s);\n else\n t2 = l + s - l * s;\n t1 = 2 * l - t2;\n\n rgb = [0, 0, 0];\n for (var i = 0; i < 3; i++) {\n t3 = h + 1 / 3 * - (i - 1);\n t3 < 0 && t3++;\n t3 > 1 && t3--;\n\n if (6 * t3 < 1)\n val = t1 + (t2 - t1) * 6 * t3;\n else if (2 * t3 < 1)\n val = t2;\n else if (3 * t3 < 2)\n val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n else\n val = t1;\n\n rgb[i] = val * 255;\n }\n\n return rgb;\n}\n\nfunction hsl2hsv(hsl) {\n var h = hsl[0],\n s = hsl[1] / 100,\n l = hsl[2] / 100,\n sv, v;\n\n if(l === 0) {\n // no need to do calc on black\n // also avoids divide by 0 error\n return [0, 0, 0];\n }\n\n l *= 2;\n s *= (l <= 1) ? l : 2 - l;\n v = (l + s) / 2;\n sv = (2 * s) / (l + s);\n return [h, sv * 100, v * 100];\n}\n\nfunction hsl2hwb(args) {\n return rgb2hwb(hsl2rgb(args));\n}\n\nfunction hsl2cmyk(args) {\n return rgb2cmyk(hsl2rgb(args));\n}\n\nfunction hsl2keyword(args) {\n return rgb2keyword(hsl2rgb(args));\n}\n\n\nfunction hsv2rgb(hsv) {\n var h = hsv[0] / 60,\n s = hsv[1] / 100,\n v = hsv[2] / 100,\n hi = Math.floor(h) % 6;\n\n var f = h - Math.floor(h),\n p = 255 * v * (1 - s),\n q = 255 * v * (1 - (s * f)),\n t = 255 * v * (1 - (s * (1 - f))),\n v = 255 * v;\n\n switch(hi) {\n case 0:\n return [v, t, p];\n case 1:\n return [q, v, p];\n case 2:\n return [p, v, t];\n case 3:\n return [p, q, v];\n case 4:\n return [t, p, v];\n case 5:\n return [v, p, q];\n }\n}\n\nfunction hsv2hsl(hsv) {\n var h = hsv[0],\n s = hsv[1] / 100,\n v = hsv[2] / 100,\n sl, l;\n\n l = (2 - s) * v;\n sl = s * v;\n sl /= (l <= 1) ? l : 2 - l;\n sl = sl || 0;\n l /= 2;\n return [h, sl * 100, l * 100];\n}\n\nfunction hsv2hwb(args) {\n return rgb2hwb(hsv2rgb(args))\n}\n\nfunction hsv2cmyk(args) {\n return rgb2cmyk(hsv2rgb(args));\n}\n\nfunction hsv2keyword(args) {\n return rgb2keyword(hsv2rgb(args));\n}\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nfunction hwb2rgb(hwb) {\n var h = hwb[0] / 360,\n wh = hwb[1] / 100,\n bl = hwb[2] / 100,\n ratio = wh + bl,\n i, v, f, n;\n\n // wh + bl cant be > 1\n if (ratio > 1) {\n wh /= ratio;\n bl /= ratio;\n }\n\n i = Math.floor(6 * h);\n v = 1 - bl;\n f = 6 * h - i;\n if ((i & 0x01) != 0) {\n f = 1 - f;\n }\n n = wh + f * (v - wh); // linear interpolation\n\n switch (i) {\n default:\n case 6:\n case 0: r = v; g = n; b = wh; break;\n case 1: r = n; g = v; b = wh; break;\n case 2: r = wh; g = v; b = n; break;\n case 3: r = wh; g = n; b = v; break;\n case 4: r = n; g = wh; b = v; break;\n case 5: r = v; g = wh; b = n; break;\n }\n\n return [r * 255, g * 255, b * 255];\n}\n\nfunction hwb2hsl(args) {\n return rgb2hsl(hwb2rgb(args));\n}\n\nfunction hwb2hsv(args) {\n return rgb2hsv(hwb2rgb(args));\n}\n\nfunction hwb2cmyk(args) {\n return rgb2cmyk(hwb2rgb(args));\n}\n\nfunction hwb2keyword(args) {\n return rgb2keyword(hwb2rgb(args));\n}\n\nfunction cmyk2rgb(cmyk) {\n var c = cmyk[0] / 100,\n m = cmyk[1] / 100,\n y = cmyk[2] / 100,\n k = cmyk[3] / 100,\n r, g, b;\n\n r = 1 - Math.min(1, c * (1 - k) + k);\n g = 1 - Math.min(1, m * (1 - k) + k);\n b = 1 - Math.min(1, y * (1 - k) + k);\n return [r * 255, g * 255, b * 255];\n}\n\nfunction cmyk2hsl(args) {\n return rgb2hsl(cmyk2rgb(args));\n}\n\nfunction cmyk2hsv(args) {\n return rgb2hsv(cmyk2rgb(args));\n}\n\nfunction cmyk2hwb(args) {\n return rgb2hwb(cmyk2rgb(args));\n}\n\nfunction cmyk2keyword(args) {\n return rgb2keyword(cmyk2rgb(args));\n}\n\n\nfunction xyz2rgb(xyz) {\n var x = xyz[0] / 100,\n y = xyz[1] / 100,\n z = xyz[2] / 100,\n r, g, b;\n\n r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n // assume sRGB\n r = r > 0.0031308 ? ((1.055 * Math.pow(r, 1.0 / 2.4)) - 0.055)\n : r = (r * 12.92);\n\n g = g > 0.0031308 ? ((1.055 * Math.pow(g, 1.0 / 2.4)) - 0.055)\n : g = (g * 12.92);\n\n b = b > 0.0031308 ? ((1.055 * Math.pow(b, 1.0 / 2.4)) - 0.055)\n : b = (b * 12.92);\n\n r = Math.min(Math.max(0, r), 1);\n g = Math.min(Math.max(0, g), 1);\n b = Math.min(Math.max(0, b), 1);\n\n return [r * 255, g * 255, b * 255];\n}\n\nfunction xyz2lab(xyz) {\n var x = xyz[0],\n y = xyz[1],\n z = xyz[2],\n l, a, b;\n\n x /= 95.047;\n y /= 100;\n z /= 108.883;\n\n x = x > 0.008856 ? Math.pow(x, 1/3) : (7.787 * x) + (16 / 116);\n y = y > 0.008856 ? Math.pow(y, 1/3) : (7.787 * y) + (16 / 116);\n z = z > 0.008856 ? Math.pow(z, 1/3) : (7.787 * z) + (16 / 116);\n\n l = (116 * y) - 16;\n a = 500 * (x - y);\n b = 200 * (y - z);\n\n return [l, a, b];\n}\n\nfunction xyz2lch(args) {\n return lab2lch(xyz2lab(args));\n}\n\nfunction lab2xyz(lab) {\n var l = lab[0],\n a = lab[1],\n b = lab[2],\n x, y, z, y2;\n\n if (l <= 8) {\n y = (l * 100) / 903.3;\n y2 = (7.787 * (y / 100)) + (16 / 116);\n } else {\n y = 100 * Math.pow((l + 16) / 116, 3);\n y2 = Math.pow(y / 100, 1/3);\n }\n\n x = x / 95.047 <= 0.008856 ? x = (95.047 * ((a / 500) + y2 - (16 / 116))) / 7.787 : 95.047 * Math.pow((a / 500) + y2, 3);\n\n z = z / 108.883 <= 0.008859 ? z = (108.883 * (y2 - (b / 200) - (16 / 116))) / 7.787 : 108.883 * Math.pow(y2 - (b / 200), 3);\n\n return [x, y, z];\n}\n\nfunction lab2lch(lab) {\n var l = lab[0],\n a = lab[1],\n b = lab[2],\n hr, h, c;\n\n hr = Math.atan2(b, a);\n h = hr * 360 / 2 / Math.PI;\n if (h < 0) {\n h += 360;\n }\n c = Math.sqrt(a * a + b * b);\n return [l, c, h];\n}\n\nfunction lab2rgb(args) {\n return xyz2rgb(lab2xyz(args));\n}\n\nfunction lch2lab(lch) {\n var l = lch[0],\n c = lch[1],\n h = lch[2],\n a, b, hr;\n\n hr = h / 360 * 2 * Math.PI;\n a = c * Math.cos(hr);\n b = c * Math.sin(hr);\n return [l, a, b];\n}\n\nfunction lch2xyz(args) {\n return lab2xyz(lch2lab(args));\n}\n\nfunction lch2rgb(args) {\n return lab2rgb(lch2lab(args));\n}\n\nfunction keyword2rgb(keyword) {\n return cssKeywords[keyword];\n}\n\nfunction keyword2hsl(args) {\n return rgb2hsl(keyword2rgb(args));\n}\n\nfunction keyword2hsv(args) {\n return rgb2hsv(keyword2rgb(args));\n}\n\nfunction keyword2hwb(args) {\n return rgb2hwb(keyword2rgb(args));\n}\n\nfunction keyword2cmyk(args) {\n return rgb2cmyk(keyword2rgb(args));\n}\n\nfunction keyword2lab(args) {\n return rgb2lab(keyword2rgb(args));\n}\n\nfunction keyword2xyz(args) {\n return rgb2xyz(keyword2rgb(args));\n}\n\nvar cssKeywords = {\n aliceblue: [240,248,255],\n antiquewhite: [250,235,215],\n aqua: [0,255,255],\n aquamarine: [127,255,212],\n azure: [240,255,255],\n beige: [245,245,220],\n bisque: [255,228,196],\n black: [0,0,0],\n blanchedalmond: [255,235,205],\n blue: [0,0,255],\n blueviolet: [138,43,226],\n brown: [165,42,42],\n burlywood: [222,184,135],\n cadetblue: [95,158,160],\n chartreuse: [127,255,0],\n chocolate: [210,105,30],\n coral: [255,127,80],\n cornflowerblue: [100,149,237],\n cornsilk: [255,248,220],\n crimson: [220,20,60],\n cyan: [0,255,255],\n darkblue: [0,0,139],\n darkcyan: [0,139,139],\n darkgoldenrod: [184,134,11],\n darkgray: [169,169,169],\n darkgreen: [0,100,0],\n darkgrey: [169,169,169],\n darkkhaki: [189,183,107],\n darkmagenta: [139,0,139],\n darkolivegreen: [85,107,47],\n darkorange: [255,140,0],\n darkorchid: [153,50,204],\n darkred: [139,0,0],\n darksalmon: [233,150,122],\n darkseagreen: [143,188,143],\n darkslateblue: [72,61,139],\n darkslategray: [47,79,79],\n darkslategrey: [47,79,79],\n darkturquoise: [0,206,209],\n darkviolet: [148,0,211],\n deeppink: [255,20,147],\n deepskyblue: [0,191,255],\n dimgray: [105,105,105],\n dimgrey: [105,105,105],\n dodgerblue: [30,144,255],\n firebrick: [178,34,34],\n floralwhite: [255,250,240],\n forestgreen: [34,139,34],\n fuchsia: [255,0,255],\n gainsboro: [220,220,220],\n ghostwhite: [248,248,255],\n gold: [255,215,0],\n goldenrod: [218,165,32],\n gray: [128,128,128],\n green: [0,128,0],\n greenyellow: [173,255,47],\n grey: [128,128,128],\n honeydew: [240,255,240],\n hotpink: [255,105,180],\n indianred: [205,92,92],\n indigo: [75,0,130],\n ivory: [255,255,240],\n khaki: [240,230,140],\n lavender: [230,230,250],\n lavenderblush: [255,240,245],\n lawngreen: [124,252,0],\n lemonchiffon: [255,250,205],\n lightblue: [173,216,230],\n lightcoral: [240,128,128],\n lightcyan: [224,255,255],\n lightgoldenrodyellow: [250,250,210],\n lightgray: [211,211,211],\n lightgreen: [144,238,144],\n lightgrey: [211,211,211],\n lightpink: [255,182,193],\n lightsalmon: [255,160,122],\n lightseagreen: [32,178,170],\n lightskyblue: [135,206,250],\n lightslategray: [119,136,153],\n lightslategrey: [119,136,153],\n lightsteelblue: [176,196,222],\n lightyellow: [255,255,224],\n lime: [0,255,0],\n limegreen: [50,205,50],\n linen: [250,240,230],\n magenta: [255,0,255],\n maroon: [128,0,0],\n mediumaquamarine: [102,205,170],\n mediumblue: [0,0,205],\n mediumorchid: [186,85,211],\n mediumpurple: [147,112,219],\n mediumseagreen: [60,179,113],\n mediumslateblue: [123,104,238],\n mediumspringgreen: [0,250,154],\n mediumturquoise: [72,209,204],\n mediumvioletred: [199,21,133],\n midnightblue: [25,25,112],\n mintcream: [245,255,250],\n mistyrose: [255,228,225],\n moccasin: [255,228,181],\n navajowhite: [255,222,173],\n navy: [0,0,128],\n oldlace: [253,245,230],\n olive: [128,128,0],\n olivedrab: [107,142,35],\n orange: [255,165,0],\n orangered: [255,69,0],\n orchid: [218,112,214],\n palegoldenrod: [238,232,170],\n palegreen: [152,251,152],\n paleturquoise: [175,238,238],\n palevioletred: [219,112,147],\n papayawhip: [255,239,213],\n peachpuff: [255,218,185],\n peru: [205,133,63],\n pink: [255,192,203],\n plum: [221,160,221],\n powderblue: [176,224,230],\n purple: [128,0,128],\n rebeccapurple: [102, 51, 153],\n red: [255,0,0],\n rosybrown: [188,143,143],\n royalblue: [65,105,225],\n saddlebrown: [139,69,19],\n salmon: [250,128,114],\n sandybrown: [244,164,96],\n seagreen: [46,139,87],\n seashell: [255,245,238],\n sienna: [160,82,45],\n silver: [192,192,192],\n skyblue: [135,206,235],\n slateblue: [106,90,205],\n slategray: [112,128,144],\n slategrey: [112,128,144],\n snow: [255,250,250],\n springgreen: [0,255,127],\n steelblue: [70,130,180],\n tan: [210,180,140],\n teal: [0,128,128],\n thistle: [216,191,216],\n tomato: [255,99,71],\n turquoise: [64,224,208],\n violet: [238,130,238],\n wheat: [245,222,179],\n white: [255,255,255],\n whitesmoke: [245,245,245],\n yellow: [255,255,0],\n yellowgreen: [154,205,50]\n};\n\nvar reverseKeywords = {};\nfor (var key in cssKeywords) {\n reverseKeywords[JSON.stringify(cssKeywords[key])] = key;\n}\n\n},{}],4:[function(require,module,exports){\nvar conversions = require(3);\n\nvar convert = function() {\n return new Converter();\n}\n\nfor (var func in conversions) {\n // export Raw versions\n convert[func + \"Raw\"] = (function(func) {\n // accept array or plain args\n return function(arg) {\n if (typeof arg == \"number\")\n arg = Array.prototype.slice.call(arguments);\n return conversions[func](arg);\n }\n })(func);\n\n var pair = /(\\w+)2(\\w+)/.exec(func),\n from = pair[1],\n to = pair[2];\n\n // export rgb2hsl and [\"rgb\"][\"hsl\"]\n convert[from] = convert[from] || {};\n\n convert[from][to] = convert[func] = (function(func) { \n return function(arg) {\n if (typeof arg == \"number\")\n arg = Array.prototype.slice.call(arguments);\n \n var val = conversions[func](arg);\n if (typeof val == \"string\" || val === undefined)\n return val; // keyword\n\n for (var i = 0; i < val.length; i++)\n val[i] = Math.round(val[i]);\n return val;\n }\n })(func);\n}\n\n\n/* Converter does lazy conversion and caching */\nvar Converter = function() {\n this.convs = {};\n};\n\n/* Either get the values for a space or\n set the values for a space, depending on args */\nConverter.prototype.routeSpace = function(space, args) {\n var values = args[0];\n if (values === undefined) {\n // color.rgb()\n return this.getValues(space);\n }\n // color.rgb(10, 10, 10)\n if (typeof values == \"number\") {\n values = Array.prototype.slice.call(args); \n }\n\n return this.setValues(space, values);\n};\n \n/* Set the values for a space, invalidating cache */\nConverter.prototype.setValues = function(space, values) {\n this.space = space;\n this.convs = {};\n this.convs[space] = values;\n return this;\n};\n\n/* Get the values for a space. If there's already\n a conversion for the space, fetch it, otherwise\n compute it */\nConverter.prototype.getValues = function(space) {\n var vals = this.convs[space];\n if (!vals) {\n var fspace = this.space,\n from = this.convs[fspace];\n vals = convert[fspace][space](from);\n\n this.convs[space] = vals;\n }\n return vals;\n};\n\n[\"rgb\", \"hsl\", \"hsv\", \"cmyk\", \"keyword\"].forEach(function(space) {\n Converter.prototype[space] = function(vals) {\n return this.routeSpace(space, arguments);\n }\n});\n\nmodule.exports = convert;\n},{\"3\":3}],5:[function(require,module,exports){\n'use strict'\n\nmodule.exports = {\n \"aliceblue\": [240, 248, 255],\n \"antiquewhite\": [250, 235, 215],\n \"aqua\": [0, 255, 255],\n \"aquamarine\": [127, 255, 212],\n \"azure\": [240, 255, 255],\n \"beige\": [245, 245, 220],\n \"bisque\": [255, 228, 196],\n \"black\": [0, 0, 0],\n \"blanchedalmond\": [255, 235, 205],\n \"blue\": [0, 0, 255],\n \"blueviolet\": [138, 43, 226],\n \"brown\": [165, 42, 42],\n \"burlywood\": [222, 184, 135],\n \"cadetblue\": [95, 158, 160],\n \"chartreuse\": [127, 255, 0],\n \"chocolate\": [210, 105, 30],\n \"coral\": [255, 127, 80],\n \"cornflowerblue\": [100, 149, 237],\n \"cornsilk\": [255, 248, 220],\n \"crimson\": [220, 20, 60],\n \"cyan\": [0, 255, 255],\n \"darkblue\": [0, 0, 139],\n \"darkcyan\": [0, 139, 139],\n \"darkgoldenrod\": [184, 134, 11],\n \"darkgray\": [169, 169, 169],\n \"darkgreen\": [0, 100, 0],\n \"darkgrey\": [169, 169, 169],\n \"darkkhaki\": [189, 183, 107],\n \"darkmagenta\": [139, 0, 139],\n \"darkolivegreen\": [85, 107, 47],\n \"darkorange\": [255, 140, 0],\n \"darkorchid\": [153, 50, 204],\n \"darkred\": [139, 0, 0],\n \"darksalmon\": [233, 150, 122],\n \"darkseagreen\": [143, 188, 143],\n \"darkslateblue\": [72, 61, 139],\n \"darkslategray\": [47, 79, 79],\n \"darkslategrey\": [47, 79, 79],\n \"darkturquoise\": [0, 206, 209],\n \"darkviolet\": [148, 0, 211],\n \"deeppink\": [255, 20, 147],\n \"deepskyblue\": [0, 191, 255],\n \"dimgray\": [105, 105, 105],\n \"dimgrey\": [105, 105, 105],\n \"dodgerblue\": [30, 144, 255],\n \"firebrick\": [178, 34, 34],\n \"floralwhite\": [255, 250, 240],\n \"forestgreen\": [34, 139, 34],\n \"fuchsia\": [255, 0, 255],\n \"gainsboro\": [220, 220, 220],\n \"ghostwhite\": [248, 248, 255],\n \"gold\": [255, 215, 0],\n \"goldenrod\": [218, 165, 32],\n \"gray\": [128, 128, 128],\n \"green\": [0, 128, 0],\n \"greenyellow\": [173, 255, 47],\n \"grey\": [128, 128, 128],\n \"honeydew\": [240, 255, 240],\n \"hotpink\": [255, 105, 180],\n \"indianred\": [205, 92, 92],\n \"indigo\": [75, 0, 130],\n \"ivory\": [255, 255, 240],\n \"khaki\": [240, 230, 140],\n \"lavender\": [230, 230, 250],\n \"lavenderblush\": [255, 240, 245],\n \"lawngreen\": [124, 252, 0],\n \"lemonchiffon\": [255, 250, 205],\n \"lightblue\": [173, 216, 230],\n \"lightcoral\": [240, 128, 128],\n \"lightcyan\": [224, 255, 255],\n \"lightgoldenrodyellow\": [250, 250, 210],\n \"lightgray\": [211, 211, 211],\n \"lightgreen\": [144, 238, 144],\n \"lightgrey\": [211, 211, 211],\n \"lightpink\": [255, 182, 193],\n \"lightsalmon\": [255, 160, 122],\n \"lightseagreen\": [32, 178, 170],\n \"lightskyblue\": [135, 206, 250],\n \"lightslategray\": [119, 136, 153],\n \"lightslategrey\": [119, 136, 153],\n \"lightsteelblue\": [176, 196, 222],\n \"lightyellow\": [255, 255, 224],\n \"lime\": [0, 255, 0],\n \"limegreen\": [50, 205, 50],\n \"linen\": [250, 240, 230],\n \"magenta\": [255, 0, 255],\n \"maroon\": [128, 0, 0],\n \"mediumaquamarine\": [102, 205, 170],\n \"mediumblue\": [0, 0, 205],\n \"mediumorchid\": [186, 85, 211],\n \"mediumpurple\": [147, 112, 219],\n \"mediumseagreen\": [60, 179, 113],\n \"mediumslateblue\": [123, 104, 238],\n \"mediumspringgreen\": [0, 250, 154],\n \"mediumturquoise\": [72, 209, 204],\n \"mediumvioletred\": [199, 21, 133],\n \"midnightblue\": [25, 25, 112],\n \"mintcream\": [245, 255, 250],\n \"mistyrose\": [255, 228, 225],\n \"moccasin\": [255, 228, 181],\n \"navajowhite\": [255, 222, 173],\n \"navy\": [0, 0, 128],\n \"oldlace\": [253, 245, 230],\n \"olive\": [128, 128, 0],\n \"olivedrab\": [107, 142, 35],\n \"orange\": [255, 165, 0],\n \"orangered\": [255, 69, 0],\n \"orchid\": [218, 112, 214],\n \"palegoldenrod\": [238, 232, 170],\n \"palegreen\": [152, 251, 152],\n \"paleturquoise\": [175, 238, 238],\n \"palevioletred\": [219, 112, 147],\n \"papayawhip\": [255, 239, 213],\n \"peachpuff\": [255, 218, 185],\n \"peru\": [205, 133, 63],\n \"pink\": [255, 192, 203],\n \"plum\": [221, 160, 221],\n \"powderblue\": [176, 224, 230],\n \"purple\": [128, 0, 128],\n \"rebeccapurple\": [102, 51, 153],\n \"red\": [255, 0, 0],\n \"rosybrown\": [188, 143, 143],\n \"royalblue\": [65, 105, 225],\n \"saddlebrown\": [139, 69, 19],\n \"salmon\": [250, 128, 114],\n \"sandybrown\": [244, 164, 96],\n \"seagreen\": [46, 139, 87],\n \"seashell\": [255, 245, 238],\n \"sienna\": [160, 82, 45],\n \"silver\": [192, 192, 192],\n \"skyblue\": [135, 206, 235],\n \"slateblue\": [106, 90, 205],\n \"slategray\": [112, 128, 144],\n \"slategrey\": [112, 128, 144],\n \"snow\": [255, 250, 250],\n \"springgreen\": [0, 255, 127],\n \"steelblue\": [70, 130, 180],\n \"tan\": [210, 180, 140],\n \"teal\": [0, 128, 128],\n \"thistle\": [216, 191, 216],\n \"tomato\": [255, 99, 71],\n \"turquoise\": [64, 224, 208],\n \"violet\": [238, 130, 238],\n \"wheat\": [245, 222, 179],\n \"white\": [255, 255, 255],\n \"whitesmoke\": [245, 245, 245],\n \"yellow\": [255, 255, 0],\n \"yellowgreen\": [154, 205, 50]\n};\n\n},{}],6:[function(require,module,exports){\n//! moment.js\n//! version : 2.18.1\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\nvar hookCallback;\n\nfunction hooks () {\n return hookCallback.apply(null, arguments);\n}\n\n// This is done to register the method called with moment()\n// without creating circular dependencies.\nfunction setHookCallback (callback) {\n hookCallback = callback;\n}\n\nfunction isArray(input) {\n return input instanceof Array || Object.prototype.toString.call(input) === '[object Array]';\n}\n\nfunction isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return input != null && Object.prototype.toString.call(input) === '[object Object]';\n}\n\nfunction isObjectEmpty(obj) {\n var k;\n for (k in obj) {\n // even if its not own property I'd still call it non-empty\n return false;\n }\n return true;\n}\n\nfunction isUndefined(input) {\n return input === void 0;\n}\n\nfunction isNumber(input) {\n return typeof input === 'number' || Object.prototype.toString.call(input) === '[object Number]';\n}\n\nfunction isDate(input) {\n return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';\n}\n\nfunction map(arr, fn) {\n var res = [], i;\n for (i = 0; i < arr.length; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n}\n\nfunction hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n}\n\nfunction extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n}\n\nfunction createUTC (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n}\n\nfunction defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty : false,\n unusedTokens : [],\n unusedInput : [],\n overflow : -2,\n charsLeftOver : 0,\n nullInput : false,\n invalidMonth : null,\n invalidFormat : false,\n userInvalidated : false,\n iso : false,\n parsedDateParts : [],\n meridiem : null,\n rfc2822 : false,\n weekdayMismatch : false\n };\n}\n\nfunction getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n}\n\nvar some;\nif (Array.prototype.some) {\n some = Array.prototype.some;\n} else {\n some = function (fun) {\n var t = Object(this);\n var len = t.length >>> 0;\n\n for (var i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n}\n\nvar some$1 = some;\n\nfunction isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m);\n var parsedParts = some$1.call(flags.parsedDateParts, function (i) {\n return i != null;\n });\n var isNowValid = !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid = isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n }\n else {\n return isNowValid;\n }\n }\n return m._isValid;\n}\n\nfunction createInvalid (flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n }\n else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n}\n\n// Plugins that add properties should also add the key here (null value),\n// so we can properly clone ourselves.\nvar momentProperties = hooks.momentProperties = [];\n\nfunction copyConfig(to, from) {\n var i, prop, val;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentProperties.length > 0) {\n for (i = 0; i < momentProperties.length; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n}\n\nvar updateInProgress = false;\n\n// Moment prototype object\nfunction Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n}\n\nfunction isMoment (obj) {\n return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);\n}\n\nfunction absFloor (number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n}\n\nfunction toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n}\n\n// compare two arrays, return the number of differences\nfunction compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if ((dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n}\n\nfunction warn(msg) {\n if (hooks.suppressDeprecationWarnings === false &&\n (typeof console !== 'undefined') && console.warn) {\n console.warn('Deprecation warning: ' + msg);\n }\n}\n\nfunction deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [];\n var arg;\n for (var i = 0; i < arguments.length; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (var key in arguments[0]) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(msg + '\\nArguments: ' + Array.prototype.slice.call(args).join('') + '\\n' + (new Error()).stack);\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n}\n\nvar deprecations = {};\n\nfunction deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n}\n\nhooks.suppressDeprecationWarnings = false;\nhooks.deprecationHandler = null;\n\nfunction isFunction(input) {\n return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';\n}\n\nfunction set (config) {\n var prop, i;\n for (i in config) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' + (/\\d{1,2}/).source);\n}\n\nfunction mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig), prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n}\n\nfunction Locale(config) {\n if (config != null) {\n this.set(config);\n }\n}\n\nvar keys;\n\nif (Object.keys) {\n keys = Object.keys;\n} else {\n keys = function (obj) {\n var i, res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n}\n\nvar keys$1 = keys;\n\nvar defaultCalendar = {\n sameDay : '[Today at] LT',\n nextDay : '[Tomorrow at] LT',\n nextWeek : 'dddd [at] LT',\n lastDay : '[Yesterday at] LT',\n lastWeek : '[Last] dddd [at] LT',\n sameElse : 'L'\n};\n\nfunction calendar (key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n}\n\nvar defaultLongDateFormat = {\n LTS : 'h:mm:ss A',\n LT : 'h:mm A',\n L : 'MM/DD/YYYY',\n LL : 'MMMM D, YYYY',\n LLL : 'MMMM D, YYYY h:mm A',\n LLLL : 'dddd, MMMM D, YYYY h:mm A'\n};\n\nfunction longDateFormat (key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) {\n return val.slice(1);\n });\n\n return this._longDateFormat[key];\n}\n\nvar defaultInvalidDate = 'Invalid date';\n\nfunction invalidDate () {\n return this._invalidDate;\n}\n\nvar defaultOrdinal = '%d';\nvar defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\nfunction ordinal (number) {\n return this._ordinal.replace('%d', number);\n}\n\nvar defaultRelativeTime = {\n future : 'in %s',\n past : '%s ago',\n s : 'a few seconds',\n ss : '%d seconds',\n m : 'a minute',\n mm : '%d minutes',\n h : 'an hour',\n hh : '%d hours',\n d : 'a day',\n dd : '%d days',\n M : 'a month',\n MM : '%d months',\n y : 'a year',\n yy : '%d years'\n};\n\nfunction relativeTime (number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return (isFunction(output)) ?\n output(number, withoutSuffix, string, isFuture) :\n output.replace(/%d/i, number);\n}\n\nfunction pastFuture (diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n}\n\nvar aliases = {};\n\nfunction addUnitAlias (unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n}\n\nfunction normalizeUnits(units) {\n return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined;\n}\n\nfunction normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n}\n\nvar priorities = {};\n\nfunction addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n}\n\nfunction getPrioritizedUnits(unitsObj) {\n var units = [];\n for (var u in unitsObj) {\n units.push({unit: u, priority: priorities[u]});\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n}\n\nfunction makeGetSet (unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n}\n\nfunction get (mom, unit) {\n return mom.isValid() ?\n mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN;\n}\n\nfunction set$1 (mom, unit, value) {\n if (mom.isValid()) {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n}\n\n// MOMENTS\n\nfunction stringGet (units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n}\n\n\nfunction stringSet (units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units);\n for (var i = 0; i < prioritized.length; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n}\n\nfunction zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber;\n}\n\nvar formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;\n\nvar localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;\n\nvar formatFunctions = {};\n\nvar formatTokenFunctions = {};\n\n// token: 'M'\n// padded: ['MM', 2]\n// ordinal: 'Mo'\n// callback: function () { this.month() + 1 }\nfunction addFormatToken (token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(func.apply(this, arguments), token);\n };\n }\n}\n\nfunction removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n}\n\nfunction makeFormatFunction(format) {\n var array = format.match(formattingTokens), i, length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '', i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i]) ? array[i].call(mom, format) : array[i];\n }\n return output;\n };\n}\n\n// format date using native date object\nfunction formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n}\n\nfunction expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n}\n\nvar match1 = /\\d/; // 0 - 9\nvar match2 = /\\d\\d/; // 00 - 99\nvar match3 = /\\d{3}/; // 000 - 999\nvar match4 = /\\d{4}/; // 0000 - 9999\nvar match6 = /[+-]?\\d{6}/; // -999999 - 999999\nvar match1to2 = /\\d\\d?/; // 0 - 99\nvar match3to4 = /\\d\\d\\d\\d?/; // 999 - 9999\nvar match5to6 = /\\d\\d\\d\\d\\d\\d?/; // 99999 - 999999\nvar match1to3 = /\\d{1,3}/; // 0 - 999\nvar match1to4 = /\\d{1,4}/; // 0 - 9999\nvar match1to6 = /[+-]?\\d{1,6}/; // -999999 - 999999\n\nvar matchUnsigned = /\\d+/; // 0 - inf\nvar matchSigned = /[+-]?\\d+/; // -inf - inf\n\nvar matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi; // +00:00 -00:00 +0000 -0000 or Z\nvar matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n\nvar matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/; // 123456789 123456789.123\n\n// any word (or two) characters or numbers including two/three word month in arabic.\n// includes scottish gaelic two word and hyphenated months\nvar matchWord = /[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i;\n\n\nvar regexes = {};\n\nfunction addRegexToken (token, regex, strictRegex) {\n regexes[token] = isFunction(regex) ? regex : function (isStrict, localeData) {\n return (isStrict && strictRegex) ? strictRegex : regex;\n };\n}\n\nfunction getParseRegexForToken (token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n}\n\n// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\nfunction unescapeFormat(s) {\n return regexEscape(s.replace('\\\\', '').replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g, function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }));\n}\n\nfunction regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n\nvar tokens = {};\n\nfunction addParseToken (token, callback) {\n var i, func = callback;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n for (i = 0; i < token.length; i++) {\n tokens[token[i]] = func;\n }\n}\n\nfunction addWeekParseToken (token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n}\n\nfunction addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n}\n\nvar YEAR = 0;\nvar MONTH = 1;\nvar DATE = 2;\nvar HOUR = 3;\nvar MINUTE = 4;\nvar SECOND = 5;\nvar MILLISECOND = 6;\nvar WEEK = 7;\nvar WEEKDAY = 8;\n\nvar indexOf;\n\nif (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n} else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n}\n\nvar indexOf$1 = indexOf;\n\nfunction daysInMonth(year, month) {\n return new Date(Date.UTC(year, month + 1, 0)).getUTCDate();\n}\n\n// FORMATTING\n\naddFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n});\n\naddFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n});\n\naddFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n});\n\n// ALIASES\n\naddUnitAlias('month', 'M');\n\n// PRIORITY\n\naddUnitPriority('month', 8);\n\n// PARSING\n\naddRegexToken('M', match1to2);\naddRegexToken('MM', match1to2, match2);\naddRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n});\naddRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n});\n\naddParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n});\n\naddParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n});\n\n// LOCALES\n\nvar MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;\nvar defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_');\nfunction localeMonths (m, format) {\n if (!m) {\n return isArray(this._months) ? this._months :\n this._months['standalone'];\n }\n return isArray(this._months) ? this._months[m.month()] :\n this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? 'format' : 'standalone'][m.month()];\n}\n\nvar defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_');\nfunction localeMonthsShort (m, format) {\n if (!m) {\n return isArray(this._monthsShort) ? this._monthsShort :\n this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort) ? this._monthsShort[m.month()] :\n this._monthsShort[MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][m.month()];\n}\n\nfunction handleStrictParse(monthName, format, strict) {\n var i, ii, mom, llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(mom, '').toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf$1.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf$1.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf$1.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf$1.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeMonthsParse (monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');\n this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');\n }\n if (!strict && !this._monthsParse[i]) {\n regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {\n return i;\n } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction setMonth (mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n}\n\nfunction getSetMonth (value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n}\n\nfunction getDaysInMonth () {\n return daysInMonth(this.year(), this.month());\n}\n\nvar defaultMonthsShortRegex = matchWord;\nfunction monthsShortRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict ?\n this._monthsShortStrictRegex : this._monthsShortRegex;\n }\n}\n\nvar defaultMonthsRegex = matchWord;\nfunction monthsRegex (isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict ?\n this._monthsStrictRegex : this._monthsRegex;\n }\n}\n\nfunction computeMonthsParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n}\n\n// FORMATTING\n\naddFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? '' + y : '+' + y;\n});\n\naddFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n});\n\naddFormatToken(0, ['YYYY', 4], 0, 'year');\naddFormatToken(0, ['YYYYY', 5], 0, 'year');\naddFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n// ALIASES\n\naddUnitAlias('year', 'y');\n\n// PRIORITIES\n\naddUnitPriority('year', 1);\n\n// PARSING\n\naddRegexToken('Y', matchSigned);\naddRegexToken('YY', match1to2, match2);\naddRegexToken('YYYY', match1to4, match4);\naddRegexToken('YYYYY', match1to6, match6);\naddRegexToken('YYYYYY', match1to6, match6);\n\naddParseToken(['YYYYY', 'YYYYYY'], YEAR);\naddParseToken('YYYY', function (input, array) {\n array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n});\naddParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n});\naddParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n});\n\n// HELPERS\n\nfunction daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n}\n\nfunction isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n}\n\n// HOOKS\n\nhooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n};\n\n// MOMENTS\n\nvar getSetYear = makeGetSet('FullYear', true);\n\nfunction getIsLeapYear () {\n return isLeapYear(this.year());\n}\n\nfunction createDate (y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date = new Date(y, m, d, h, M, s, ms);\n\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0 && isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n return date;\n}\n\nfunction createUTCDate (y) {\n var date = new Date(Date.UTC.apply(null, arguments));\n\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0 && isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n return date;\n}\n\n// start-of-first-week - start-of-year\nfunction firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n}\n\n// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\nfunction dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear, resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear\n };\n}\n\nfunction weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek, resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear\n };\n}\n\nfunction weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n}\n\n// FORMATTING\n\naddFormatToken('w', ['ww', 2], 'wo', 'week');\naddFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n// ALIASES\n\naddUnitAlias('week', 'w');\naddUnitAlias('isoWeek', 'W');\n\n// PRIORITIES\n\naddUnitPriority('week', 5);\naddUnitPriority('isoWeek', 5);\n\n// PARSING\n\naddRegexToken('w', match1to2);\naddRegexToken('ww', match1to2, match2);\naddRegexToken('W', match1to2);\naddRegexToken('WW', match1to2, match2);\n\naddWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n});\n\n// HELPERS\n\n// LOCALES\n\nfunction localeWeek (mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n}\n\nvar defaultLocaleWeek = {\n dow : 0, // Sunday is the first day of the week.\n doy : 6 // The week that contains Jan 1st is the first week of the year.\n};\n\nfunction localeFirstDayOfWeek () {\n return this._week.dow;\n}\n\nfunction localeFirstDayOfYear () {\n return this._week.doy;\n}\n\n// MOMENTS\n\nfunction getSetWeek (input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\nfunction getSetISOWeek (input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\n// FORMATTING\n\naddFormatToken('d', 0, 'do', 'day');\n\naddFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n});\n\naddFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n});\n\naddFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n});\n\naddFormatToken('e', 0, 0, 'weekday');\naddFormatToken('E', 0, 0, 'isoWeekday');\n\n// ALIASES\n\naddUnitAlias('day', 'd');\naddUnitAlias('weekday', 'e');\naddUnitAlias('isoWeekday', 'E');\n\n// PRIORITY\naddUnitPriority('day', 11);\naddUnitPriority('weekday', 11);\naddUnitPriority('isoWeekday', 11);\n\n// PARSING\n\naddRegexToken('d', match1to2);\naddRegexToken('e', match1to2);\naddRegexToken('E', match1to2);\naddRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n});\naddRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n});\naddRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n});\n\naddWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n});\n\naddWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n});\n\n// HELPERS\n\nfunction parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n}\n\nfunction parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n}\n\n// LOCALES\n\nvar defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_');\nfunction localeWeekdays (m, format) {\n if (!m) {\n return isArray(this._weekdays) ? this._weekdays :\n this._weekdays['standalone'];\n }\n return isArray(this._weekdays) ? this._weekdays[m.day()] :\n this._weekdays[this._weekdays.isFormat.test(format) ? 'format' : 'standalone'][m.day()];\n}\n\nvar defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_');\nfunction localeWeekdaysShort (m) {\n return (m) ? this._weekdaysShort[m.day()] : this._weekdaysShort;\n}\n\nvar defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');\nfunction localeWeekdaysMin (m) {\n return (m) ? this._weekdaysMin[m.day()] : this._weekdaysMin;\n}\n\nfunction handleStrictParse$1(weekdayName, format, strict) {\n var i, ii, mom, llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(mom, '').toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(mom, '').toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf$1.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf$1.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf$1.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf$1.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf$1.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf$1.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf$1.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeWeekdaysParse (weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp('^' + this.weekdays(mom, '').replace('.', '\\.?') + '$', 'i');\n this._shortWeekdaysParse[i] = new RegExp('^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$', 'i');\n this._minWeekdaysParse[i] = new RegExp('^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$', 'i');\n }\n if (!this._weekdaysParse[i]) {\n regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (strict && format === 'dddd' && this._fullWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'ddd' && this._shortWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (strict && format === 'dd' && this._minWeekdaysParse[i].test(weekdayName)) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction getSetDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n}\n\nfunction getSetLocaleDayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n}\n\nfunction getSetISODayOfWeek (input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n}\n\nvar defaultWeekdaysRegex = matchWord;\nfunction weekdaysRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict ?\n this._weekdaysStrictRegex : this._weekdaysRegex;\n }\n}\n\nvar defaultWeekdaysShortRegex = matchWord;\nfunction weekdaysShortRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict ?\n this._weekdaysShortStrictRegex : this._weekdaysShortRegex;\n }\n}\n\nvar defaultWeekdaysMinRegex = matchWord;\nfunction weekdaysMinRegex (isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict ?\n this._weekdaysMinStrictRegex : this._weekdaysMinRegex;\n }\n}\n\n\nfunction computeWeekdaysParse () {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [],\n i, mom, minp, shortp, longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = this.weekdaysMin(mom, '');\n shortp = this.weekdaysShort(mom, '');\n longp = this.weekdays(mom, '');\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 7; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i');\n this._weekdaysShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i');\n this._weekdaysMinStrictRegex = new RegExp('^(' + minPieces.join('|') + ')', 'i');\n}\n\n// FORMATTING\n\nfunction hFormat() {\n return this.hours() % 12 || 12;\n}\n\nfunction kFormat() {\n return this.hours() || 24;\n}\n\naddFormatToken('H', ['HH', 2], 0, 'hour');\naddFormatToken('h', ['hh', 2], 0, hFormat);\naddFormatToken('k', ['kk', 2], 0, kFormat);\n\naddFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('hmmss', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n});\n\naddFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('Hmmss', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2);\n});\n\nfunction meridiem (token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);\n });\n}\n\nmeridiem('a', true);\nmeridiem('A', false);\n\n// ALIASES\n\naddUnitAlias('hour', 'h');\n\n// PRIORITY\naddUnitPriority('hour', 13);\n\n// PARSING\n\nfunction matchMeridiem (isStrict, locale) {\n return locale._meridiemParse;\n}\n\naddRegexToken('a', matchMeridiem);\naddRegexToken('A', matchMeridiem);\naddRegexToken('H', match1to2);\naddRegexToken('h', match1to2);\naddRegexToken('k', match1to2);\naddRegexToken('HH', match1to2, match2);\naddRegexToken('hh', match1to2, match2);\naddRegexToken('kk', match1to2, match2);\n\naddRegexToken('hmm', match3to4);\naddRegexToken('hmmss', match5to6);\naddRegexToken('Hmm', match3to4);\naddRegexToken('Hmmss', match5to6);\n\naddParseToken(['H', 'HH'], HOUR);\naddParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n});\naddParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n});\naddParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n});\naddParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4;\n var pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n});\n\n// LOCALES\n\nfunction localeIsPM (input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return ((input + '').toLowerCase().charAt(0) === 'p');\n}\n\nvar defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i;\nfunction localeMeridiem (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n}\n\n\n// MOMENTS\n\n// Setting the hour should keep the time, because the user explicitly\n// specified which hour he wants. So trying to maintain the same hour (in\n// a new timezone) makes sense. Adding/subtracting hours does not follow\n// this rule.\nvar getSetHour = makeGetSet('Hours', true);\n\n// months\n// week\n// weekdays\n// meridiem\nvar baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse\n};\n\n// internal storage for locale config files\nvar locales = {};\nvar localeFamilies = {};\nvar globalLocale;\n\nfunction normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n}\n\n// pick the locale from the array\n// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n// substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\nfunction chooseLocale(names) {\n var i = 0, j, next, locale, split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return null;\n}\n\nfunction loadLocale(name) {\n var oldLocale = null;\n // TODO: Find a better way to register and load all the locales in Node\n if (!locales[name] && (typeof module !== 'undefined') &&\n module && module.exports) {\n try {\n oldLocale = globalLocale._abbr;\n require('./locale/' + name);\n // because defineLocale currently also sets the global locale, we\n // want to undo that for lazy loaded locales\n getSetGlobalLocale(oldLocale);\n } catch (e) { }\n }\n return locales[name];\n}\n\n// This function will load locale and then set the global locale. If\n// no arguments are passed in, it will simply return the current global\n// locale key.\nfunction getSetGlobalLocale (key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n }\n else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n }\n }\n\n return globalLocale._abbr;\n}\n\nfunction defineLocale (name, config) {\n if (config !== null) {\n var parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple('defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.');\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config\n });\n return null;\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n}\n\nfunction updateLocale(name, config) {\n if (config != null) {\n var locale, parentConfig = baseConfig;\n // MERGE\n if (locales[name] != null) {\n parentConfig = locales[name]._config;\n }\n config = mergeConfigs(parentConfig, config);\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n}\n\n// returns locale data\nfunction getLocale (key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n}\n\nfunction listLocales() {\n return keys$1(locales);\n}\n\nfunction checkOverflow (m) {\n var overflow;\n var a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :\n a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :\n a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :\n a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :\n a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :\n a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :\n -1;\n\n if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n}\n\n// iso 8601 regex\n// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\nvar extendedIsoRegex = /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;\nvar basicIsoRegex = /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;\n\nvar tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/;\n\nvar isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n // YYYYMM is NOT allowed by the standard\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/]\n];\n\n// iso time formats and regexes\nvar isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/]\n];\n\nvar aspNetJsonRegex = /^\\/?Date\\((\\-?\\d+)/i;\n\n// date from iso format\nfunction configFromISO(config) {\n var i, l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime, dateFormat, timeFormat, tzFormat;\n\n if (match) {\n getParsingFlags(config).iso = true;\n\n for (i = 0, l = isoDates.length; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimes.length; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n}\n\n// RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\nvar basicRfcRegex = /^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d?\\d\\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(?:\\d\\d)?\\d\\d\\s)(\\d\\d:\\d\\d)(\\:\\d\\d)?(\\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\\d{4}))$/;\n\n// date and time from ref 2822 format\nfunction configFromRFC2822(config) {\n var string, match, dayFormat,\n dateFormat, timeFormat, tzFormat;\n var timezones = {\n ' GMT': ' +0000',\n ' EDT': ' -0400',\n ' EST': ' -0500',\n ' CDT': ' -0500',\n ' CST': ' -0600',\n ' MDT': ' -0600',\n ' MST': ' -0700',\n ' PDT': ' -0700',\n ' PST': ' -0800'\n };\n var military = 'YXWVUTSRQPONZABCDEFGHIKLM';\n var timezone, timezoneIndex;\n\n string = config._i\n .replace(/\\([^\\)]*\\)|[\\n\\t]/g, ' ') // Remove comments and folding whitespace\n .replace(/(\\s\\s+)/g, ' ') // Replace multiple-spaces with a single space\n .replace(/^\\s|\\s$/g, ''); // Remove leading and trailing spaces\n match = basicRfcRegex.exec(string);\n\n if (match) {\n dayFormat = match[1] ? 'ddd' + ((match[1].length === 5) ? ', ' : ' ') : '';\n dateFormat = 'D MMM ' + ((match[2].length > 10) ? 'YYYY ' : 'YY ');\n timeFormat = 'HH:mm' + (match[4] ? ':ss' : '');\n\n // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check.\n if (match[1]) { // day of week given\n var momentDate = new Date(match[2]);\n var momentDay = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'][momentDate.getDay()];\n\n if (match[1].substr(0,3) !== momentDay) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return;\n }\n }\n\n switch (match[5].length) {\n case 2: // military\n if (timezoneIndex === 0) {\n timezone = ' +0000';\n } else {\n timezoneIndex = military.indexOf(match[5][1].toUpperCase()) - 12;\n timezone = ((timezoneIndex < 0) ? ' -' : ' +') +\n (('' + timezoneIndex).replace(/^-?/, '0')).match(/..$/)[0] + '00';\n }\n break;\n case 4: // Zone\n timezone = timezones[match[5]];\n break;\n default: // UT or +/-9999\n timezone = timezones[' GMT'];\n }\n match[5] = timezone;\n config._i = match.splice(1).join('');\n tzFormat = ' ZZ';\n config._f = dayFormat + dateFormat + timeFormat + tzFormat;\n configFromStringAndFormat(config);\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n}\n\n// date from iso format or fallback\nfunction configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n}\n\nhooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged and will be removed in an upcoming major release. Please refer to ' +\n 'http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n);\n\n// Pick the first defined of two or three arguments.\nfunction defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n}\n\nfunction currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n}\n\n// convert an array to a date.\n// the array should mirror the parameters below\n// note: all values past the year are optional and will default to the lowest possible value.\n// [year, month, day , hour, minute, second, millisecond]\nfunction configFromArray (config) {\n var i, date, input = [], currentDate, yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n}\n\nfunction dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year);\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n var curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from begining of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to begining of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n}\n\n// constant that refers to the ISO standard\nhooks.ISO_8601 = function () {};\n\n// constant that refers to the RFC 2822 form\nhooks.RFC_2822 = function () {};\n\n// date from string and format string\nfunction configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i, parsedInput, tokens, token, skipped,\n stringLength = string.length,\n totalParsedInputLength = 0;\n\n tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];\n\n for (i = 0; i < tokens.length; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];\n // console.log('token', token, 'parsedInput', parsedInput,\n // 'regex', getParseRegexForToken(token, config));\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(string.indexOf(parsedInput) + parsedInput.length);\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n }\n else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n }\n else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);\n\n configFromArray(config);\n checkOverflow(config);\n}\n\n\nfunction meridiemFixWrap (locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n}\n\n// date from string and array of format strings\nfunction configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n\n scoreToBeat,\n i,\n currentScore;\n\n if (config._f.length === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < config._f.length; i++) {\n currentScore = 0;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (!isValid(tempConfig)) {\n continue;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (scoreToBeat == null || currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n\n extend(config, bestMoment || tempConfig);\n}\n\nfunction configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i);\n config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) {\n return obj && parseInt(obj, 10);\n });\n\n configFromArray(config);\n}\n\nfunction createFromConfig (config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n}\n\nfunction prepareConfig (config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({nullInput: true});\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n}\n\nfunction configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n}\n\nfunction createLocalOrUTC (input, format, locale, strict, isUTC) {\n var c = {};\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if ((isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n}\n\nfunction createLocal (input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n}\n\nvar prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n);\n\nvar prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n);\n\n// Pick a moment m from moments so that m[fn](other) is true for all\n// other. This relies on the function fn to be transitive.\n//\n// moments should either be an array of moment objects or an array, whose\n// first element is an array of moment objects.\nfunction pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n}\n\n// TODO: Use [].sort instead?\nfunction min () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n}\n\nfunction max () {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n}\n\nvar now = function () {\n return Date.now ? Date.now() : +(new Date());\n};\n\nvar ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond'];\n\nfunction isDurationValid(m) {\n for (var key in m) {\n if (!(ordering.indexOf(key) !== -1 && (m[key] == null || !isNaN(m[key])))) {\n return false;\n }\n }\n\n var unitHasDecimal = false;\n for (var i = 0; i < ordering.length; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n}\n\nfunction isValid$1() {\n return this._isValid;\n}\n\nfunction createInvalid$1() {\n return createDuration(NaN);\n}\n\nfunction Duration (duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds = +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days +\n weeks * 7;\n // It is impossible translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months +\n quarters * 3 +\n years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n}\n\nfunction isDuration (obj) {\n return obj instanceof Duration;\n}\n\nfunction absRound (number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n}\n\n// FORMATTING\n\nfunction offset (token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset();\n var sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);\n });\n}\n\noffset('Z', ':');\noffset('ZZ', '');\n\n// PARSING\n\naddRegexToken('Z', matchShortOffset);\naddRegexToken('ZZ', matchShortOffset);\naddParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n});\n\n// HELPERS\n\n// timezone chunker\n// '+10:00' > ['10', '00']\n// '-1530' > ['-15', '30']\nvar chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\nfunction offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher);\n\n if (matches === null) {\n return null;\n }\n\n var chunk = matches[matches.length - 1] || [];\n var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n var minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ?\n 0 :\n parts[0] === '+' ? minutes : -minutes;\n}\n\n// Return a moment from input, that is local/utc/zone equivalent to model.\nfunction cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n}\n\nfunction getDateOffset (m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset() / 15) * 15;\n}\n\n// HOOKS\n\n// This function will be called whenever a moment is mutated.\n// It is intended to keep the offset in sync with the timezone.\nhooks.updateOffset = function () {};\n\n// MOMENTS\n\n// keepLocalTime = true means only change the timezone, without\n// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n// +0200, so we adjust the time as needed, to be valid.\n//\n// Keeping the time actually adds/subtracts (one hour)\n// from the actual represented time. That is why we call updateOffset\n// a second time. In case it wants us to change the offset again\n// _changeInProgress == true case, then we have to adjust, because\n// there is no such time in the given timezone.\nfunction getSetOffset (input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(this, createDuration(input - offset, 'm'), 1, false);\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n}\n\nfunction getSetZone (input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n}\n\nfunction setOffsetToUTC (keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n}\n\nfunction setOffsetToLocal (keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n}\n\nfunction setOffsetToParsedOffset () {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n }\n else {\n this.utcOffset(0, true);\n }\n }\n return this;\n}\n\nfunction hasAlignedHourOffset (input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n}\n\nfunction isDaylightSavingTime () {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n}\n\nfunction isDaylightSavingTimeShifted () {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {};\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n var other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted = this.isValid() &&\n compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n}\n\nfunction isLocal () {\n return this.isValid() ? !this._isUTC : false;\n}\n\nfunction isUtcOffset () {\n return this.isValid() ? this._isUTC : false;\n}\n\nfunction isUtc () {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n}\n\n// ASP.NET json date format regex\nvar aspNetRegex = /^(\\-)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;\n\n// from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n// somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n// and further modified to allow for strings containing both week and day\nvar isoRegex = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;\n\nfunction createDuration (input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms : input._milliseconds,\n d : input._days,\n M : input._months\n };\n } else if (isNumber(input)) {\n duration = {};\n if (key) {\n duration[key] = input;\n } else {\n duration.milliseconds = input;\n }\n } else if (!!(match = aspNetRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : 0,\n d : toInt(match[DATE]) * sign,\n h : toInt(match[HOUR]) * sign,\n m : toInt(match[MINUTE]) * sign,\n s : toInt(match[SECOND]) * sign,\n ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match\n };\n } else if (!!(match = isoRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : parseIso(match[2], sign),\n M : parseIso(match[3], sign),\n w : parseIso(match[4], sign),\n d : parseIso(match[5], sign),\n h : parseIso(match[6], sign),\n m : parseIso(match[7], sign),\n s : parseIso(match[8], sign)\n };\n } else if (duration == null) {// checks for null or undefined\n duration = {};\n } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {\n diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to));\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n return ret;\n}\n\ncreateDuration.fn = Duration.prototype;\ncreateDuration.invalid = createInvalid$1;\n\nfunction parseIso (inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n}\n\nfunction positiveMomentsDifference(base, other) {\n var res = {milliseconds: 0, months: 0};\n\n res.months = other.month() - base.month() +\n (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +(base.clone().add(res.months, 'M'));\n\n return res;\n}\n\nfunction momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return {milliseconds: 0, months: 0};\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n}\n\n// TODO: remove 'name' arg after deprecation is removed\nfunction createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');\n tmp = val; val = period; period = tmp;\n }\n\n val = typeof val === 'string' ? +val : val;\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n}\n\nfunction addSubtract (mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n}\n\nvar add = createAdder(1, 'add');\nvar subtract = createAdder(-1, 'subtract');\n\nfunction getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6 ? 'sameElse' :\n diff < -1 ? 'lastWeek' :\n diff < 0 ? 'lastDay' :\n diff < 1 ? 'sameDay' :\n diff < 2 ? 'nextDay' :\n diff < 7 ? 'nextWeek' : 'sameElse';\n}\n\nfunction calendar$1 (time, formats) {\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse';\n\n var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);\n\n return this.format(output || this.localeData().calendar(format, this, createLocal(now)));\n}\n\nfunction clone () {\n return new Moment(this);\n}\n\nfunction isAfter (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(!isUndefined(units) ? units : 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n}\n\nfunction isBefore (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(!isUndefined(units) ? units : 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n}\n\nfunction isBetween (from, to, units, inclusivity) {\n inclusivity = inclusivity || '()';\n return (inclusivity[0] === '(' ? this.isAfter(from, units) : !this.isBefore(from, units)) &&\n (inclusivity[1] === ')' ? this.isBefore(to, units) : !this.isAfter(to, units));\n}\n\nfunction isSame (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units || 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf();\n }\n}\n\nfunction isSameOrAfter (input, units) {\n return this.isSame(input, units) || this.isAfter(input,units);\n}\n\nfunction isSameOrBefore (input, units) {\n return this.isSame(input, units) || this.isBefore(input,units);\n}\n\nfunction diff (input, units, asFloat) {\n var that,\n zoneDelta,\n delta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n if (units === 'year' || units === 'month' || units === 'quarter') {\n output = monthDiff(this, that);\n if (units === 'quarter') {\n output = output / 3;\n } else if (units === 'year') {\n output = output / 12;\n }\n } else {\n delta = this - that;\n output = units === 'second' ? delta / 1e3 : // 1000\n units === 'minute' ? delta / 6e4 : // 1000 * 60\n units === 'hour' ? delta / 36e5 : // 1000 * 60 * 60\n units === 'day' ? (delta - zoneDelta) / 864e5 : // 1000 * 60 * 60 * 24, negate dst\n units === 'week' ? (delta - zoneDelta) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst\n delta;\n }\n return asFloat ? output : absFloor(output);\n}\n\nfunction monthDiff (a, b) {\n // difference in months\n var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2, adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n}\n\nhooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\nhooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\nfunction toString () {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n}\n\nfunction toISOString() {\n if (!this.isValid()) {\n return null;\n }\n var m = this.clone().utc();\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n return this.toDate().toISOString();\n }\n return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n}\n\n/**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\nfunction inspect () {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment';\n var zone = '';\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n var prefix = '[' + func + '(\"]';\n var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY';\n var datetime = '-MM-DD[T]HH:mm:ss.SSS';\n var suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n}\n\nfunction format (inputString) {\n if (!inputString) {\n inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n}\n\nfunction from (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction fromNow (withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n}\n\nfunction to (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction toNow (withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n}\n\n// If passed a locale key, it will set the locale for this\n// instance. Otherwise, it will return the locale configuration\n// variables for this instance.\nfunction locale (key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n}\n\nvar lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n);\n\nfunction localeData () {\n return this._locale;\n}\n\nfunction startOf (units) {\n units = normalizeUnits(units);\n // the following switch intentionally omits break keywords\n // to utilize falling through the cases.\n switch (units) {\n case 'year':\n this.month(0);\n /* falls through */\n case 'quarter':\n case 'month':\n this.date(1);\n /* falls through */\n case 'week':\n case 'isoWeek':\n case 'day':\n case 'date':\n this.hours(0);\n /* falls through */\n case 'hour':\n this.minutes(0);\n /* falls through */\n case 'minute':\n this.seconds(0);\n /* falls through */\n case 'second':\n this.milliseconds(0);\n }\n\n // weeks are a special case\n if (units === 'week') {\n this.weekday(0);\n }\n if (units === 'isoWeek') {\n this.isoWeekday(1);\n }\n\n // quarters are also special\n if (units === 'quarter') {\n this.month(Math.floor(this.month() / 3) * 3);\n }\n\n return this;\n}\n\nfunction endOf (units) {\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond') {\n return this;\n }\n\n // 'date' is an alias for 'day', so it should be considered as such.\n if (units === 'date') {\n units = 'day';\n }\n\n return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms');\n}\n\nfunction valueOf () {\n return this._d.valueOf() - ((this._offset || 0) * 60000);\n}\n\nfunction unix () {\n return Math.floor(this.valueOf() / 1000);\n}\n\nfunction toDate () {\n return new Date(this.valueOf());\n}\n\nfunction toArray () {\n var m = this;\n return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];\n}\n\nfunction toObject () {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds()\n };\n}\n\nfunction toJSON () {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n}\n\nfunction isValid$2 () {\n return isValid(this);\n}\n\nfunction parsingFlags () {\n return extend({}, getParsingFlags(this));\n}\n\nfunction invalidAt () {\n return getParsingFlags(this).overflow;\n}\n\nfunction creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict\n };\n}\n\n// FORMATTING\n\naddFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n});\n\naddFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n});\n\nfunction addWeekYearFormatToken (token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n}\n\naddWeekYearFormatToken('gggg', 'weekYear');\naddWeekYearFormatToken('ggggg', 'weekYear');\naddWeekYearFormatToken('GGGG', 'isoWeekYear');\naddWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n// ALIASES\n\naddUnitAlias('weekYear', 'gg');\naddUnitAlias('isoWeekYear', 'GG');\n\n// PRIORITY\n\naddUnitPriority('weekYear', 1);\naddUnitPriority('isoWeekYear', 1);\n\n\n// PARSING\n\naddRegexToken('G', matchSigned);\naddRegexToken('g', matchSigned);\naddRegexToken('GG', match1to2, match2);\naddRegexToken('gg', match1to2, match2);\naddRegexToken('GGGG', match1to4, match4);\naddRegexToken('gggg', match1to4, match4);\naddRegexToken('GGGGG', match1to6, match6);\naddRegexToken('ggggg', match1to6, match6);\n\naddWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n});\n\naddWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n});\n\n// MOMENTS\n\nfunction getSetWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy);\n}\n\nfunction getSetISOWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input, this.isoWeek(), this.isoWeekday(), 1, 4);\n}\n\nfunction getISOWeeksInYear () {\n return weeksInYear(this.year(), 1, 4);\n}\n\nfunction getWeeksInYear () {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n}\n\nfunction setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n}\n\n// FORMATTING\n\naddFormatToken('Q', 0, 'Qo', 'quarter');\n\n// ALIASES\n\naddUnitAlias('quarter', 'Q');\n\n// PRIORITY\n\naddUnitPriority('quarter', 7);\n\n// PARSING\n\naddRegexToken('Q', match1);\naddParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n});\n\n// MOMENTS\n\nfunction getSetQuarter (input) {\n return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);\n}\n\n// FORMATTING\n\naddFormatToken('D', ['DD', 2], 'Do', 'date');\n\n// ALIASES\n\naddUnitAlias('date', 'D');\n\n// PRIOROITY\naddUnitPriority('date', 9);\n\n// PARSING\n\naddRegexToken('D', match1to2);\naddRegexToken('DD', match1to2, match2);\naddRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict ?\n (locale._dayOfMonthOrdinalParse || locale._ordinalParse) :\n locale._dayOfMonthOrdinalParseLenient;\n});\n\naddParseToken(['D', 'DD'], DATE);\naddParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0], 10);\n});\n\n// MOMENTS\n\nvar getSetDayOfMonth = makeGetSet('Date', true);\n\n// FORMATTING\n\naddFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n// ALIASES\n\naddUnitAlias('dayOfYear', 'DDD');\n\n// PRIORITY\naddUnitPriority('dayOfYear', 4);\n\n// PARSING\n\naddRegexToken('DDD', match1to3);\naddRegexToken('DDDD', match3);\naddParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n});\n\n// HELPERS\n\n// MOMENTS\n\nfunction getSetDayOfYear (input) {\n var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;\n return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');\n}\n\n// FORMATTING\n\naddFormatToken('m', ['mm', 2], 0, 'minute');\n\n// ALIASES\n\naddUnitAlias('minute', 'm');\n\n// PRIORITY\n\naddUnitPriority('minute', 14);\n\n// PARSING\n\naddRegexToken('m', match1to2);\naddRegexToken('mm', match1to2, match2);\naddParseToken(['m', 'mm'], MINUTE);\n\n// MOMENTS\n\nvar getSetMinute = makeGetSet('Minutes', false);\n\n// FORMATTING\n\naddFormatToken('s', ['ss', 2], 0, 'second');\n\n// ALIASES\n\naddUnitAlias('second', 's');\n\n// PRIORITY\n\naddUnitPriority('second', 15);\n\n// PARSING\n\naddRegexToken('s', match1to2);\naddRegexToken('ss', match1to2, match2);\naddParseToken(['s', 'ss'], SECOND);\n\n// MOMENTS\n\nvar getSetSecond = makeGetSet('Seconds', false);\n\n// FORMATTING\n\naddFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n});\n\naddFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n});\n\naddFormatToken(0, ['SSS', 3], 0, 'millisecond');\naddFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n});\naddFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n});\naddFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n});\naddFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n});\naddFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n});\naddFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n});\n\n\n// ALIASES\n\naddUnitAlias('millisecond', 'ms');\n\n// PRIORITY\n\naddUnitPriority('millisecond', 16);\n\n// PARSING\n\naddRegexToken('S', match1to3, match1);\naddRegexToken('SS', match1to3, match2);\naddRegexToken('SSS', match1to3, match3);\n\nvar token;\nfor (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n}\n\nfunction parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n}\n\nfor (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n}\n// MOMENTS\n\nvar getSetMillisecond = makeGetSet('Milliseconds', false);\n\n// FORMATTING\n\naddFormatToken('z', 0, 0, 'zoneAbbr');\naddFormatToken('zz', 0, 0, 'zoneName');\n\n// MOMENTS\n\nfunction getZoneAbbr () {\n return this._isUTC ? 'UTC' : '';\n}\n\nfunction getZoneName () {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n}\n\nvar proto = Moment.prototype;\n\nproto.add = add;\nproto.calendar = calendar$1;\nproto.clone = clone;\nproto.diff = diff;\nproto.endOf = endOf;\nproto.format = format;\nproto.from = from;\nproto.fromNow = fromNow;\nproto.to = to;\nproto.toNow = toNow;\nproto.get = stringGet;\nproto.invalidAt = invalidAt;\nproto.isAfter = isAfter;\nproto.isBefore = isBefore;\nproto.isBetween = isBetween;\nproto.isSame = isSame;\nproto.isSameOrAfter = isSameOrAfter;\nproto.isSameOrBefore = isSameOrBefore;\nproto.isValid = isValid$2;\nproto.lang = lang;\nproto.locale = locale;\nproto.localeData = localeData;\nproto.max = prototypeMax;\nproto.min = prototypeMin;\nproto.parsingFlags = parsingFlags;\nproto.set = stringSet;\nproto.startOf = startOf;\nproto.subtract = subtract;\nproto.toArray = toArray;\nproto.toObject = toObject;\nproto.toDate = toDate;\nproto.toISOString = toISOString;\nproto.inspect = inspect;\nproto.toJSON = toJSON;\nproto.toString = toString;\nproto.unix = unix;\nproto.valueOf = valueOf;\nproto.creationData = creationData;\n\n// Year\nproto.year = getSetYear;\nproto.isLeapYear = getIsLeapYear;\n\n// Week Year\nproto.weekYear = getSetWeekYear;\nproto.isoWeekYear = getSetISOWeekYear;\n\n// Quarter\nproto.quarter = proto.quarters = getSetQuarter;\n\n// Month\nproto.month = getSetMonth;\nproto.daysInMonth = getDaysInMonth;\n\n// Week\nproto.week = proto.weeks = getSetWeek;\nproto.isoWeek = proto.isoWeeks = getSetISOWeek;\nproto.weeksInYear = getWeeksInYear;\nproto.isoWeeksInYear = getISOWeeksInYear;\n\n// Day\nproto.date = getSetDayOfMonth;\nproto.day = proto.days = getSetDayOfWeek;\nproto.weekday = getSetLocaleDayOfWeek;\nproto.isoWeekday = getSetISODayOfWeek;\nproto.dayOfYear = getSetDayOfYear;\n\n// Hour\nproto.hour = proto.hours = getSetHour;\n\n// Minute\nproto.minute = proto.minutes = getSetMinute;\n\n// Second\nproto.second = proto.seconds = getSetSecond;\n\n// Millisecond\nproto.millisecond = proto.milliseconds = getSetMillisecond;\n\n// Offset\nproto.utcOffset = getSetOffset;\nproto.utc = setOffsetToUTC;\nproto.local = setOffsetToLocal;\nproto.parseZone = setOffsetToParsedOffset;\nproto.hasAlignedHourOffset = hasAlignedHourOffset;\nproto.isDST = isDaylightSavingTime;\nproto.isLocal = isLocal;\nproto.isUtcOffset = isUtcOffset;\nproto.isUtc = isUtc;\nproto.isUTC = isUtc;\n\n// Timezone\nproto.zoneAbbr = getZoneAbbr;\nproto.zoneName = getZoneName;\n\n// Deprecations\nproto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);\nproto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);\nproto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);\nproto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone);\nproto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted);\n\nfunction createUnix (input) {\n return createLocal(input * 1000);\n}\n\nfunction createInZone () {\n return createLocal.apply(null, arguments).parseZone();\n}\n\nfunction preParsePostFormat (string) {\n return string;\n}\n\nvar proto$1 = Locale.prototype;\n\nproto$1.calendar = calendar;\nproto$1.longDateFormat = longDateFormat;\nproto$1.invalidDate = invalidDate;\nproto$1.ordinal = ordinal;\nproto$1.preparse = preParsePostFormat;\nproto$1.postformat = preParsePostFormat;\nproto$1.relativeTime = relativeTime;\nproto$1.pastFuture = pastFuture;\nproto$1.set = set;\n\n// Month\nproto$1.months = localeMonths;\nproto$1.monthsShort = localeMonthsShort;\nproto$1.monthsParse = localeMonthsParse;\nproto$1.monthsRegex = monthsRegex;\nproto$1.monthsShortRegex = monthsShortRegex;\n\n// Week\nproto$1.week = localeWeek;\nproto$1.firstDayOfYear = localeFirstDayOfYear;\nproto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n// Day of Week\nproto$1.weekdays = localeWeekdays;\nproto$1.weekdaysMin = localeWeekdaysMin;\nproto$1.weekdaysShort = localeWeekdaysShort;\nproto$1.weekdaysParse = localeWeekdaysParse;\n\nproto$1.weekdaysRegex = weekdaysRegex;\nproto$1.weekdaysShortRegex = weekdaysShortRegex;\nproto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n// Hours\nproto$1.isPM = localeIsPM;\nproto$1.meridiem = localeMeridiem;\n\nfunction get$1 (format, index, field, setter) {\n var locale = getLocale();\n var utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n}\n\nfunction listMonthsImpl (format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n}\n\n// ()\n// (5)\n// (fmt, 5)\n// (fmt)\n// (true)\n// (true, 5)\n// (true, fmt, 5)\n// (true, fmt)\nfunction listWeekdaysImpl (localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0;\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n}\n\nfunction listMonths (format, index) {\n return listMonthsImpl(format, index, 'months');\n}\n\nfunction listMonthsShort (format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n}\n\nfunction listWeekdays (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n}\n\nfunction listWeekdaysShort (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n}\n\nfunction listWeekdaysMin (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n}\n\ngetSetGlobalLocale('en', {\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n});\n\n// Side effect imports\nhooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale);\nhooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale);\n\nvar mathAbs = Math.abs;\n\nfunction abs () {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n}\n\nfunction addSubtract$1 (duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n}\n\n// supports only 2.0-style add(1, 's') or add(duration)\nfunction add$1 (input, value) {\n return addSubtract$1(this, input, value, 1);\n}\n\n// supports only 2.0-style subtract(1, 's') or subtract(duration)\nfunction subtract$1 (input, value) {\n return addSubtract$1(this, input, value, -1);\n}\n\nfunction absCeil (number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n}\n\nfunction bubble () {\n var milliseconds = this._milliseconds;\n var days = this._days;\n var months = this._months;\n var data = this._data;\n var seconds, minutes, hours, years, monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (!((milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0))) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n}\n\nfunction daysToMonths (days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return days * 4800 / 146097;\n}\n\nfunction monthsToDays (months) {\n // the reverse of daysToMonths\n return months * 146097 / 4800;\n}\n\nfunction as (units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days;\n var months;\n var milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n return units === 'month' ? months : months / 12;\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week' : return days / 7 + milliseconds / 6048e5;\n case 'day' : return days + milliseconds / 864e5;\n case 'hour' : return days * 24 + milliseconds / 36e5;\n case 'minute' : return days * 1440 + milliseconds / 6e4;\n case 'second' : return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond': return Math.floor(days * 864e5) + milliseconds;\n default: throw new Error('Unknown unit ' + units);\n }\n }\n}\n\n// TODO: Use this.as('ms')?\nfunction valueOf$1 () {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n}\n\nfunction makeAs (alias) {\n return function () {\n return this.as(alias);\n };\n}\n\nvar asMilliseconds = makeAs('ms');\nvar asSeconds = makeAs('s');\nvar asMinutes = makeAs('m');\nvar asHours = makeAs('h');\nvar asDays = makeAs('d');\nvar asWeeks = makeAs('w');\nvar asMonths = makeAs('M');\nvar asYears = makeAs('y');\n\nfunction get$2 (units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n}\n\nfunction makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n}\n\nvar milliseconds = makeGetter('milliseconds');\nvar seconds = makeGetter('seconds');\nvar minutes = makeGetter('minutes');\nvar hours = makeGetter('hours');\nvar days = makeGetter('days');\nvar months = makeGetter('months');\nvar years = makeGetter('years');\n\nfunction weeks () {\n return absFloor(this.days() / 7);\n}\n\nvar round = Math.round;\nvar thresholds = {\n ss: 44, // a few seconds to seconds\n s : 45, // seconds to minute\n m : 45, // minutes to hour\n h : 22, // hours to day\n d : 26, // days to month\n M : 11 // months to year\n};\n\n// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\nfunction substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n}\n\nfunction relativeTime$1 (posNegDuration, withoutSuffix, locale) {\n var duration = createDuration(posNegDuration).abs();\n var seconds = round(duration.as('s'));\n var minutes = round(duration.as('m'));\n var hours = round(duration.as('h'));\n var days = round(duration.as('d'));\n var months = round(duration.as('M'));\n var years = round(duration.as('y'));\n\n var a = seconds <= thresholds.ss && ['s', seconds] ||\n seconds < thresholds.s && ['ss', seconds] ||\n minutes <= 1 && ['m'] ||\n minutes < thresholds.m && ['mm', minutes] ||\n hours <= 1 && ['h'] ||\n hours < thresholds.h && ['hh', hours] ||\n days <= 1 && ['d'] ||\n days < thresholds.d && ['dd', days] ||\n months <= 1 && ['M'] ||\n months < thresholds.M && ['MM', months] ||\n years <= 1 && ['y'] || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n}\n\n// This function allows you to set the rounding function for relative time strings\nfunction getSetRelativeTimeRounding (roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof(roundingFunction) === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n}\n\n// This function allows you to set a threshold for relative time strings\nfunction getSetRelativeTimeThreshold (threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n}\n\nfunction humanize (withSuffix) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var locale = this.localeData();\n var output = relativeTime$1(this, !withSuffix, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n}\n\nvar abs$1 = Math.abs;\n\nfunction toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000;\n var days = abs$1(this._days);\n var months = abs$1(this._months);\n var minutes, hours, years;\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n var Y = years;\n var M = months;\n var D = days;\n var h = hours;\n var m = minutes;\n var s = seconds;\n var total = this.asSeconds();\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n return (total < 0 ? '-' : '') +\n 'P' +\n (Y ? Y + 'Y' : '') +\n (M ? M + 'M' : '') +\n (D ? D + 'D' : '') +\n ((h || m || s) ? 'T' : '') +\n (h ? h + 'H' : '') +\n (m ? m + 'M' : '') +\n (s ? s + 'S' : '');\n}\n\nvar proto$2 = Duration.prototype;\n\nproto$2.isValid = isValid$1;\nproto$2.abs = abs;\nproto$2.add = add$1;\nproto$2.subtract = subtract$1;\nproto$2.as = as;\nproto$2.asMilliseconds = asMilliseconds;\nproto$2.asSeconds = asSeconds;\nproto$2.asMinutes = asMinutes;\nproto$2.asHours = asHours;\nproto$2.asDays = asDays;\nproto$2.asWeeks = asWeeks;\nproto$2.asMonths = asMonths;\nproto$2.asYears = asYears;\nproto$2.valueOf = valueOf$1;\nproto$2._bubble = bubble;\nproto$2.get = get$2;\nproto$2.milliseconds = milliseconds;\nproto$2.seconds = seconds;\nproto$2.minutes = minutes;\nproto$2.hours = hours;\nproto$2.days = days;\nproto$2.weeks = weeks;\nproto$2.months = months;\nproto$2.years = years;\nproto$2.humanize = humanize;\nproto$2.toISOString = toISOString$1;\nproto$2.toString = toISOString$1;\nproto$2.toJSON = toISOString$1;\nproto$2.locale = locale;\nproto$2.localeData = localeData;\n\n// Deprecations\nproto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1);\nproto$2.lang = lang;\n\n// Side effect imports\n\n// FORMATTING\n\naddFormatToken('X', 0, 0, 'unix');\naddFormatToken('x', 0, 0, 'valueOf');\n\n// PARSING\n\naddRegexToken('x', matchSigned);\naddRegexToken('X', matchTimestamp);\naddParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input, 10) * 1000);\n});\naddParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n});\n\n// Side effect imports\n\n\nhooks.version = '2.18.1';\n\nsetHookCallback(createLocal);\n\nhooks.fn = proto;\nhooks.min = min;\nhooks.max = max;\nhooks.now = now;\nhooks.utc = createUTC;\nhooks.unix = createUnix;\nhooks.months = listMonths;\nhooks.isDate = isDate;\nhooks.locale = getSetGlobalLocale;\nhooks.invalid = createInvalid;\nhooks.duration = createDuration;\nhooks.isMoment = isMoment;\nhooks.weekdays = listWeekdays;\nhooks.parseZone = createInZone;\nhooks.localeData = getLocale;\nhooks.isDuration = isDuration;\nhooks.monthsShort = listMonthsShort;\nhooks.weekdaysMin = listWeekdaysMin;\nhooks.defineLocale = defineLocale;\nhooks.updateLocale = updateLocale;\nhooks.locales = listLocales;\nhooks.weekdaysShort = listWeekdaysShort;\nhooks.normalizeUnits = normalizeUnits;\nhooks.relativeTimeRounding = getSetRelativeTimeRounding;\nhooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\nhooks.calendarFormat = getCalendarFormat;\nhooks.prototype = proto;\n\nreturn hooks;\n\n})));\n\n},{}],7:[function(require,module,exports){\n/**\n * @namespace Chart\n */\nvar Chart = require(29)();\n\nChart.helpers = require(45);\n\n// @todo dispatch these helpers into appropriated helpers/helpers.* file and write unit tests!\nrequire(27)(Chart);\n\nChart.defaults = require(25);\nChart.Element = require(26);\nChart.elements = require(40);\nChart.Interaction = require(28);\nChart.platform = require(48);\n\nrequire(31)(Chart);\nrequire(22)(Chart);\nrequire(23)(Chart);\nrequire(24)(Chart);\nrequire(30)(Chart);\nrequire(33)(Chart);\nrequire(32)(Chart);\nrequire(35)(Chart);\n\nrequire(54)(Chart);\nrequire(52)(Chart);\nrequire(53)(Chart);\nrequire(55)(Chart);\nrequire(56)(Chart);\nrequire(57)(Chart);\n\n// Controllers must be loaded after elements\n// See Chart.core.datasetController.dataElementType\nrequire(15)(Chart);\nrequire(16)(Chart);\nrequire(17)(Chart);\nrequire(18)(Chart);\nrequire(19)(Chart);\nrequire(20)(Chart);\nrequire(21)(Chart);\n\nrequire(8)(Chart);\nrequire(9)(Chart);\nrequire(10)(Chart);\nrequire(11)(Chart);\nrequire(12)(Chart);\nrequire(13)(Chart);\nrequire(14)(Chart);\n\n// Loading built-it plugins\nvar plugins = [];\n\nplugins.push(\n require(49)(Chart),\n require(50)(Chart),\n require(51)(Chart)\n);\n\nChart.plugins.register(plugins);\n\nChart.platform.initialize();\n\nmodule.exports = Chart;\nif (typeof window !== 'undefined') {\n window.Chart = Chart;\n}\n\n// DEPRECATIONS\n\n/**\n * Provided for backward compatibility, use Chart.helpers.canvas instead.\n * @namespace Chart.canvasHelpers\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n * @private\n */\nChart.canvasHelpers = Chart.helpers.canvas;\n\n},{\"10\":10,\"11\":11,\"12\":12,\"13\":13,\"14\":14,\"15\":15,\"16\":16,\"17\":17,\"18\":18,\"19\":19,\"20\":20,\"21\":21,\"22\":22,\"23\":23,\"24\":24,\"25\":25,\"26\":26,\"27\":27,\"28\":28,\"29\":29,\"30\":30,\"31\":31,\"32\":32,\"33\":33,\"35\":35,\"40\":40,\"45\":45,\"48\":48,\"49\":49,\"50\":50,\"51\":51,\"52\":52,\"53\":53,\"54\":54,\"55\":55,\"56\":56,\"57\":57,\"8\":8,\"9\":9}],8:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.Bar = function(context, config) {\n config.type = 'bar';\n\n return new Chart(context, config);\n };\n\n};\n\n},{}],9:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.Bubble = function(context, config) {\n config.type = 'bubble';\n return new Chart(context, config);\n };\n\n};\n\n},{}],10:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.Doughnut = function(context, config) {\n config.type = 'doughnut';\n\n return new Chart(context, config);\n };\n\n};\n\n},{}],11:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.Line = function(context, config) {\n config.type = 'line';\n\n return new Chart(context, config);\n };\n\n};\n\n},{}],12:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.PolarArea = function(context, config) {\n config.type = 'polarArea';\n\n return new Chart(context, config);\n };\n\n};\n\n},{}],13:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n Chart.Radar = function(context, config) {\n config.type = 'radar';\n\n return new Chart(context, config);\n };\n\n};\n\n},{}],14:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n Chart.Scatter = function(context, config) {\n config.type = 'scatter';\n return new Chart(context, config);\n };\n};\n\n},{}],15:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('bar', {\n hover: {\n mode: 'label'\n },\n\n scales: {\n xAxes: [{\n type: 'category',\n\n // Specific to Bar Controller\n categoryPercentage: 0.8,\n barPercentage: 0.9,\n\n // offset settings\n offset: true,\n\n // grid line settings\n gridLines: {\n offsetGridLines: true\n }\n }],\n\n yAxes: [{\n type: 'linear'\n }]\n }\n});\n\ndefaults._set('horizontalBar', {\n hover: {\n mode: 'index',\n axis: 'y'\n },\n\n scales: {\n xAxes: [{\n type: 'linear',\n position: 'bottom'\n }],\n\n yAxes: [{\n position: 'left',\n type: 'category',\n\n // Specific to Horizontal Bar Controller\n categoryPercentage: 0.8,\n barPercentage: 0.9,\n\n // offset settings\n offset: true,\n\n // grid line settings\n gridLines: {\n offsetGridLines: true\n }\n }]\n },\n\n elements: {\n rectangle: {\n borderSkipped: 'left'\n }\n },\n\n tooltips: {\n callbacks: {\n title: function(item, data) {\n // Pick first xLabel for now\n var title = '';\n\n if (item.length > 0) {\n if (item[0].yLabel) {\n title = item[0].yLabel;\n } else if (data.labels.length > 0 && item[0].index < data.labels.length) {\n title = data.labels[item[0].index];\n }\n }\n\n return title;\n },\n\n label: function(item, data) {\n var datasetLabel = data.datasets[item.datasetIndex].label || '';\n return datasetLabel + ': ' + item.xLabel;\n }\n },\n mode: 'index',\n axis: 'y'\n }\n});\n\nmodule.exports = function(Chart) {\n\n Chart.controllers.bar = Chart.DatasetController.extend({\n\n dataElementType: elements.Rectangle,\n\n initialize: function() {\n var me = this;\n var meta;\n\n Chart.DatasetController.prototype.initialize.apply(me, arguments);\n\n meta = me.getMeta();\n meta.stack = me.getDataset().stack;\n meta.bar = true;\n },\n\n update: function(reset) {\n var me = this;\n var rects = me.getMeta().data;\n var i, ilen;\n\n me._ruler = me.getRuler();\n\n for (i = 0, ilen = rects.length; i < ilen; ++i) {\n me.updateElement(rects[i], i, reset);\n }\n },\n\n updateElement: function(rectangle, index, reset) {\n var me = this;\n var chart = me.chart;\n var meta = me.getMeta();\n var dataset = me.getDataset();\n var custom = rectangle.custom || {};\n var rectangleOptions = chart.options.elements.rectangle;\n\n rectangle._xScale = me.getScaleForId(meta.xAxisID);\n rectangle._yScale = me.getScaleForId(meta.yAxisID);\n rectangle._datasetIndex = me.index;\n rectangle._index = index;\n\n rectangle._model = {\n datasetLabel: dataset.label,\n label: chart.data.labels[index],\n borderSkipped: custom.borderSkipped ? custom.borderSkipped : rectangleOptions.borderSkipped,\n backgroundColor: custom.backgroundColor ? custom.backgroundColor : helpers.valueAtIndexOrDefault(dataset.backgroundColor, index, rectangleOptions.backgroundColor),\n borderColor: custom.borderColor ? custom.borderColor : helpers.valueAtIndexOrDefault(dataset.borderColor, index, rectangleOptions.borderColor),\n borderWidth: custom.borderWidth ? custom.borderWidth : helpers.valueAtIndexOrDefault(dataset.borderWidth, index, rectangleOptions.borderWidth)\n };\n\n me.updateElementGeometry(rectangle, index, reset);\n\n rectangle.pivot();\n },\n\n /**\n * @private\n */\n updateElementGeometry: function(rectangle, index, reset) {\n var me = this;\n var model = rectangle._model;\n var vscale = me.getValueScale();\n var base = vscale.getBasePixel();\n var horizontal = vscale.isHorizontal();\n var ruler = me._ruler || me.getRuler();\n var vpixels = me.calculateBarValuePixels(me.index, index);\n var ipixels = me.calculateBarIndexPixels(me.index, index, ruler);\n\n model.horizontal = horizontal;\n model.base = reset ? base : vpixels.base;\n model.x = horizontal ? reset ? base : vpixels.head : ipixels.center;\n model.y = horizontal ? ipixels.center : reset ? base : vpixels.head;\n model.height = horizontal ? ipixels.size : undefined;\n model.width = horizontal ? undefined : ipixels.size;\n },\n\n /**\n * @private\n */\n getValueScaleId: function() {\n return this.getMeta().yAxisID;\n },\n\n /**\n * @private\n */\n getIndexScaleId: function() {\n return this.getMeta().xAxisID;\n },\n\n /**\n * @private\n */\n getValueScale: function() {\n return this.getScaleForId(this.getValueScaleId());\n },\n\n /**\n * @private\n */\n getIndexScale: function() {\n return this.getScaleForId(this.getIndexScaleId());\n },\n\n /**\n * Returns the effective number of stacks based on groups and bar visibility.\n * @private\n */\n getStackCount: function(last) {\n var me = this;\n var chart = me.chart;\n var scale = me.getIndexScale();\n var stacked = scale.options.stacked;\n var ilen = last === undefined ? chart.data.datasets.length : last + 1;\n var stacks = [];\n var i, meta;\n\n for (i = 0; i < ilen; ++i) {\n meta = chart.getDatasetMeta(i);\n if (meta.bar && chart.isDatasetVisible(i) &&\n (stacked === false ||\n (stacked === true && stacks.indexOf(meta.stack) === -1) ||\n (stacked === undefined && (meta.stack === undefined || stacks.indexOf(meta.stack) === -1)))) {\n stacks.push(meta.stack);\n }\n }\n\n return stacks.length;\n },\n\n /**\n * Returns the stack index for the given dataset based on groups and bar visibility.\n * @private\n */\n getStackIndex: function(datasetIndex) {\n return this.getStackCount(datasetIndex) - 1;\n },\n\n /**\n * @private\n */\n getRuler: function() {\n var me = this;\n var scale = me.getIndexScale();\n var stackCount = me.getStackCount();\n var datasetIndex = me.index;\n var pixels = [];\n var isHorizontal = scale.isHorizontal();\n var start = isHorizontal ? scale.left : scale.top;\n var end = start + (isHorizontal ? scale.width : scale.height);\n var i, ilen;\n\n for (i = 0, ilen = me.getMeta().data.length; i < ilen; ++i) {\n pixels.push(scale.getPixelForValue(null, i, datasetIndex));\n }\n\n return {\n pixels: pixels,\n start: start,\n end: end,\n stackCount: stackCount,\n scale: scale\n };\n },\n\n /**\n * Note: pixel values are not clamped to the scale area.\n * @private\n */\n calculateBarValuePixels: function(datasetIndex, index) {\n var me = this;\n var chart = me.chart;\n var meta = me.getMeta();\n var scale = me.getValueScale();\n var datasets = chart.data.datasets;\n var value = scale.getRightValue(datasets[datasetIndex].data[index]);\n var stacked = scale.options.stacked;\n var stack = meta.stack;\n var start = 0;\n var i, imeta, ivalue, base, head, size;\n\n if (stacked || (stacked === undefined && stack !== undefined)) {\n for (i = 0; i < datasetIndex; ++i) {\n imeta = chart.getDatasetMeta(i);\n\n if (imeta.bar &&\n imeta.stack === stack &&\n imeta.controller.getValueScaleId() === scale.id &&\n chart.isDatasetVisible(i)) {\n\n ivalue = scale.getRightValue(datasets[i].data[index]);\n if ((value < 0 && ivalue < 0) || (value >= 0 && ivalue > 0)) {\n start += ivalue;\n }\n }\n }\n }\n\n base = scale.getPixelForValue(start);\n head = scale.getPixelForValue(start + value);\n size = (head - base) / 2;\n\n return {\n size: size,\n base: base,\n head: head,\n center: head + size / 2\n };\n },\n\n /**\n * @private\n */\n calculateBarIndexPixels: function(datasetIndex, index, ruler) {\n var me = this;\n var options = ruler.scale.options;\n var stackIndex = me.getStackIndex(datasetIndex);\n var pixels = ruler.pixels;\n var base = pixels[index];\n var length = pixels.length;\n var start = ruler.start;\n var end = ruler.end;\n var leftSampleSize, rightSampleSize, leftCategorySize, rightCategorySize, fullBarSize, size;\n\n if (length === 1) {\n leftSampleSize = base > start ? base - start : end - base;\n rightSampleSize = base < end ? end - base : base - start;\n } else {\n if (index > 0) {\n leftSampleSize = (base - pixels[index - 1]) / 2;\n if (index === length - 1) {\n rightSampleSize = leftSampleSize;\n }\n }\n if (index < length - 1) {\n rightSampleSize = (pixels[index + 1] - base) / 2;\n if (index === 0) {\n leftSampleSize = rightSampleSize;\n }\n }\n }\n\n leftCategorySize = leftSampleSize * options.categoryPercentage;\n rightCategorySize = rightSampleSize * options.categoryPercentage;\n fullBarSize = (leftCategorySize + rightCategorySize) / ruler.stackCount;\n size = fullBarSize * options.barPercentage;\n\n size = Math.min(\n helpers.valueOrDefault(options.barThickness, size),\n helpers.valueOrDefault(options.maxBarThickness, Infinity));\n\n base -= leftCategorySize;\n base += fullBarSize * stackIndex;\n base += (fullBarSize - size) / 2;\n\n return {\n size: size,\n base: base,\n head: base + size,\n center: base + size / 2\n };\n },\n\n draw: function() {\n var me = this;\n var chart = me.chart;\n var scale = me.getValueScale();\n var rects = me.getMeta().data;\n var dataset = me.getDataset();\n var ilen = rects.length;\n var i = 0;\n\n helpers.canvas.clipArea(chart.ctx, chart.chartArea);\n\n for (; i < ilen; ++i) {\n if (!isNaN(scale.getRightValue(dataset.data[i]))) {\n rects[i].draw();\n }\n }\n\n helpers.canvas.unclipArea(chart.ctx);\n },\n\n setHoverStyle: function(rectangle) {\n var dataset = this.chart.data.datasets[rectangle._datasetIndex];\n var index = rectangle._index;\n var custom = rectangle.custom || {};\n var model = rectangle._model;\n\n model.backgroundColor = custom.hoverBackgroundColor ? custom.hoverBackgroundColor : helpers.valueAtIndexOrDefault(dataset.hoverBackgroundColor, index, helpers.getHoverColor(model.backgroundColor));\n model.borderColor = custom.hoverBorderColor ? custom.hoverBorderColor : helpers.valueAtIndexOrDefault(dataset.hoverBorderColor, index, helpers.getHoverColor(model.borderColor));\n model.borderWidth = custom.hoverBorderWidth ? custom.hoverBorderWidth : helpers.valueAtIndexOrDefault(dataset.hoverBorderWidth, index, model.borderWidth);\n },\n\n removeHoverStyle: function(rectangle) {\n var dataset = this.chart.data.datasets[rectangle._datasetIndex];\n var index = rectangle._index;\n var custom = rectangle.custom || {};\n var model = rectangle._model;\n var rectangleElementOptions = this.chart.options.elements.rectangle;\n\n model.backgroundColor = custom.backgroundColor ? custom.backgroundColor : helpers.valueAtIndexOrDefault(dataset.backgroundColor, index, rectangleElementOptions.backgroundColor);\n model.borderColor = custom.borderColor ? custom.borderColor : helpers.valueAtIndexOrDefault(dataset.borderColor, index, rectangleElementOptions.borderColor);\n model.borderWidth = custom.borderWidth ? custom.borderWidth : helpers.valueAtIndexOrDefault(dataset.borderWidth, index, rectangleElementOptions.borderWidth);\n }\n });\n\n Chart.controllers.horizontalBar = Chart.controllers.bar.extend({\n /**\n * @private\n */\n getValueScaleId: function() {\n return this.getMeta().xAxisID;\n },\n\n /**\n * @private\n */\n getIndexScaleId: function() {\n return this.getMeta().yAxisID;\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],16:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('bubble', {\n hover: {\n mode: 'single'\n },\n\n scales: {\n xAxes: [{\n type: 'linear', // bubble should probably use a linear scale by default\n position: 'bottom',\n id: 'x-axis-0' // need an ID so datasets can reference the scale\n }],\n yAxes: [{\n type: 'linear',\n position: 'left',\n id: 'y-axis-0'\n }]\n },\n\n tooltips: {\n callbacks: {\n title: function() {\n // Title doesn't make sense for scatter since we format the data as a point\n return '';\n },\n label: function(item, data) {\n var datasetLabel = data.datasets[item.datasetIndex].label || '';\n var dataPoint = data.datasets[item.datasetIndex].data[item.index];\n return datasetLabel + ': (' + item.xLabel + ', ' + item.yLabel + ', ' + dataPoint.r + ')';\n }\n }\n }\n});\n\n\nmodule.exports = function(Chart) {\n\n Chart.controllers.bubble = Chart.DatasetController.extend({\n /**\n * @protected\n */\n dataElementType: elements.Point,\n\n /**\n * @protected\n */\n update: function(reset) {\n var me = this;\n var meta = me.getMeta();\n var points = meta.data;\n\n // Update Points\n helpers.each(points, function(point, index) {\n me.updateElement(point, index, reset);\n });\n },\n\n /**\n * @protected\n */\n updateElement: function(point, index, reset) {\n var me = this;\n var meta = me.getMeta();\n var custom = point.custom || {};\n var xScale = me.getScaleForId(meta.xAxisID);\n var yScale = me.getScaleForId(meta.yAxisID);\n var options = me._resolveElementOptions(point, index);\n var data = me.getDataset().data[index];\n var dsIndex = me.index;\n\n var x = reset ? xScale.getPixelForDecimal(0.5) : xScale.getPixelForValue(typeof data === 'object' ? data : NaN, index, dsIndex);\n var y = reset ? yScale.getBasePixel() : yScale.getPixelForValue(data, index, dsIndex);\n\n point._xScale = xScale;\n point._yScale = yScale;\n point._options = options;\n point._datasetIndex = dsIndex;\n point._index = index;\n point._model = {\n backgroundColor: options.backgroundColor,\n borderColor: options.borderColor,\n borderWidth: options.borderWidth,\n hitRadius: options.hitRadius,\n pointStyle: options.pointStyle,\n radius: reset ? 0 : options.radius,\n skip: custom.skip || isNaN(x) || isNaN(y),\n x: x,\n y: y,\n };\n\n point.pivot();\n },\n\n /**\n * @protected\n */\n setHoverStyle: function(point) {\n var model = point._model;\n var options = point._options;\n\n model.backgroundColor = helpers.valueOrDefault(options.hoverBackgroundColor, helpers.getHoverColor(options.backgroundColor));\n model.borderColor = helpers.valueOrDefault(options.hoverBorderColor, helpers.getHoverColor(options.borderColor));\n model.borderWidth = helpers.valueOrDefault(options.hoverBorderWidth, options.borderWidth);\n model.radius = options.radius + options.hoverRadius;\n },\n\n /**\n * @protected\n */\n removeHoverStyle: function(point) {\n var model = point._model;\n var options = point._options;\n\n model.backgroundColor = options.backgroundColor;\n model.borderColor = options.borderColor;\n model.borderWidth = options.borderWidth;\n model.radius = options.radius;\n },\n\n /**\n * @private\n */\n _resolveElementOptions: function(point, index) {\n var me = this;\n var chart = me.chart;\n var datasets = chart.data.datasets;\n var dataset = datasets[me.index];\n var custom = point.custom || {};\n var options = chart.options.elements.point;\n var resolve = helpers.options.resolve;\n var data = dataset.data[index];\n var values = {};\n var i, ilen, key;\n\n // Scriptable options\n var context = {\n chart: chart,\n dataIndex: index,\n dataset: dataset,\n datasetIndex: me.index\n };\n\n var keys = [\n 'backgroundColor',\n 'borderColor',\n 'borderWidth',\n 'hoverBackgroundColor',\n 'hoverBorderColor',\n 'hoverBorderWidth',\n 'hoverRadius',\n 'hitRadius',\n 'pointStyle'\n ];\n\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n key = keys[i];\n values[key] = resolve([\n custom[key],\n dataset[key],\n options[key]\n ], context, index);\n }\n\n // Custom radius resolution\n values.radius = resolve([\n custom.radius,\n data ? data.r : undefined,\n dataset.radius,\n options.radius\n ], context, index);\n\n return values;\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],17:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('doughnut', {\n animation: {\n // Boolean - Whether we animate the rotation of the Doughnut\n animateRotate: true,\n // Boolean - Whether we animate scaling the Doughnut from the centre\n animateScale: false\n },\n hover: {\n mode: 'single'\n },\n legendCallback: function(chart) {\n var text = [];\n text.push('

    ');\n\n var data = chart.data;\n var datasets = data.datasets;\n var labels = data.labels;\n\n if (datasets.length) {\n for (var i = 0; i < datasets[0].data.length; ++i) {\n text.push('
  • ');\n if (labels[i]) {\n text.push(labels[i]);\n }\n text.push('
  • ');\n }\n }\n\n text.push('
');\n return text.join('');\n },\n legend: {\n labels: {\n generateLabels: function(chart) {\n var data = chart.data;\n if (data.labels.length && data.datasets.length) {\n return data.labels.map(function(label, i) {\n var meta = chart.getDatasetMeta(0);\n var ds = data.datasets[0];\n var arc = meta.data[i];\n var custom = arc && arc.custom || {};\n var valueAtIndexOrDefault = helpers.valueAtIndexOrDefault;\n var arcOpts = chart.options.elements.arc;\n var fill = custom.backgroundColor ? custom.backgroundColor : valueAtIndexOrDefault(ds.backgroundColor, i, arcOpts.backgroundColor);\n var stroke = custom.borderColor ? custom.borderColor : valueAtIndexOrDefault(ds.borderColor, i, arcOpts.borderColor);\n var bw = custom.borderWidth ? custom.borderWidth : valueAtIndexOrDefault(ds.borderWidth, i, arcOpts.borderWidth);\n\n return {\n text: label,\n fillStyle: fill,\n strokeStyle: stroke,\n lineWidth: bw,\n hidden: isNaN(ds.data[i]) || meta.data[i].hidden,\n\n // Extra data used for toggling the correct item\n index: i\n };\n });\n }\n return [];\n }\n },\n\n onClick: function(e, legendItem) {\n var index = legendItem.index;\n var chart = this.chart;\n var i, ilen, meta;\n\n for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) {\n meta = chart.getDatasetMeta(i);\n // toggle visibility of index if exists\n if (meta.data[index]) {\n meta.data[index].hidden = !meta.data[index].hidden;\n }\n }\n\n chart.update();\n }\n },\n\n // The percentage of the chart that we cut out of the middle.\n cutoutPercentage: 50,\n\n // The rotation of the chart, where the first data arc begins.\n rotation: Math.PI * -0.5,\n\n // The total circumference of the chart.\n circumference: Math.PI * 2.0,\n\n // Need to override these to give a nice default\n tooltips: {\n callbacks: {\n title: function() {\n return '';\n },\n label: function(tooltipItem, data) {\n var dataLabel = data.labels[tooltipItem.index];\n var value = ': ' + data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index];\n\n if (helpers.isArray(dataLabel)) {\n // show value on first line of multiline label\n // need to clone because we are changing the value\n dataLabel = dataLabel.slice();\n dataLabel[0] += value;\n } else {\n dataLabel += value;\n }\n\n return dataLabel;\n }\n }\n }\n});\n\ndefaults._set('pie', helpers.clone(defaults.doughnut));\ndefaults._set('pie', {\n cutoutPercentage: 0\n});\n\nmodule.exports = function(Chart) {\n\n Chart.controllers.doughnut = Chart.controllers.pie = Chart.DatasetController.extend({\n\n dataElementType: elements.Arc,\n\n linkScales: helpers.noop,\n\n // Get index of the dataset in relation to the visible datasets. This allows determining the inner and outer radius correctly\n getRingIndex: function(datasetIndex) {\n var ringIndex = 0;\n\n for (var j = 0; j < datasetIndex; ++j) {\n if (this.chart.isDatasetVisible(j)) {\n ++ringIndex;\n }\n }\n\n return ringIndex;\n },\n\n update: function(reset) {\n var me = this;\n var chart = me.chart;\n var chartArea = chart.chartArea;\n var opts = chart.options;\n var arcOpts = opts.elements.arc;\n var availableWidth = chartArea.right - chartArea.left - arcOpts.borderWidth;\n var availableHeight = chartArea.bottom - chartArea.top - arcOpts.borderWidth;\n var minSize = Math.min(availableWidth, availableHeight);\n var offset = {x: 0, y: 0};\n var meta = me.getMeta();\n var cutoutPercentage = opts.cutoutPercentage;\n var circumference = opts.circumference;\n\n // If the chart's circumference isn't a full circle, calculate minSize as a ratio of the width/height of the arc\n if (circumference < Math.PI * 2.0) {\n var startAngle = opts.rotation % (Math.PI * 2.0);\n startAngle += Math.PI * 2.0 * (startAngle >= Math.PI ? -1 : startAngle < -Math.PI ? 1 : 0);\n var endAngle = startAngle + circumference;\n var start = {x: Math.cos(startAngle), y: Math.sin(startAngle)};\n var end = {x: Math.cos(endAngle), y: Math.sin(endAngle)};\n var contains0 = (startAngle <= 0 && endAngle >= 0) || (startAngle <= Math.PI * 2.0 && Math.PI * 2.0 <= endAngle);\n var contains90 = (startAngle <= Math.PI * 0.5 && Math.PI * 0.5 <= endAngle) || (startAngle <= Math.PI * 2.5 && Math.PI * 2.5 <= endAngle);\n var contains180 = (startAngle <= -Math.PI && -Math.PI <= endAngle) || (startAngle <= Math.PI && Math.PI <= endAngle);\n var contains270 = (startAngle <= -Math.PI * 0.5 && -Math.PI * 0.5 <= endAngle) || (startAngle <= Math.PI * 1.5 && Math.PI * 1.5 <= endAngle);\n var cutout = cutoutPercentage / 100.0;\n var min = {x: contains180 ? -1 : Math.min(start.x * (start.x < 0 ? 1 : cutout), end.x * (end.x < 0 ? 1 : cutout)), y: contains270 ? -1 : Math.min(start.y * (start.y < 0 ? 1 : cutout), end.y * (end.y < 0 ? 1 : cutout))};\n var max = {x: contains0 ? 1 : Math.max(start.x * (start.x > 0 ? 1 : cutout), end.x * (end.x > 0 ? 1 : cutout)), y: contains90 ? 1 : Math.max(start.y * (start.y > 0 ? 1 : cutout), end.y * (end.y > 0 ? 1 : cutout))};\n var size = {width: (max.x - min.x) * 0.5, height: (max.y - min.y) * 0.5};\n minSize = Math.min(availableWidth / size.width, availableHeight / size.height);\n offset = {x: (max.x + min.x) * -0.5, y: (max.y + min.y) * -0.5};\n }\n\n chart.borderWidth = me.getMaxBorderWidth(meta.data);\n chart.outerRadius = Math.max((minSize - chart.borderWidth) / 2, 0);\n chart.innerRadius = Math.max(cutoutPercentage ? (chart.outerRadius / 100) * (cutoutPercentage) : 0, 0);\n chart.radiusLength = (chart.outerRadius - chart.innerRadius) / chart.getVisibleDatasetCount();\n chart.offsetX = offset.x * chart.outerRadius;\n chart.offsetY = offset.y * chart.outerRadius;\n\n meta.total = me.calculateTotal();\n\n me.outerRadius = chart.outerRadius - (chart.radiusLength * me.getRingIndex(me.index));\n me.innerRadius = Math.max(me.outerRadius - chart.radiusLength, 0);\n\n helpers.each(meta.data, function(arc, index) {\n me.updateElement(arc, index, reset);\n });\n },\n\n updateElement: function(arc, index, reset) {\n var me = this;\n var chart = me.chart;\n var chartArea = chart.chartArea;\n var opts = chart.options;\n var animationOpts = opts.animation;\n var centerX = (chartArea.left + chartArea.right) / 2;\n var centerY = (chartArea.top + chartArea.bottom) / 2;\n var startAngle = opts.rotation; // non reset case handled later\n var endAngle = opts.rotation; // non reset case handled later\n var dataset = me.getDataset();\n var circumference = reset && animationOpts.animateRotate ? 0 : arc.hidden ? 0 : me.calculateCircumference(dataset.data[index]) * (opts.circumference / (2.0 * Math.PI));\n var innerRadius = reset && animationOpts.animateScale ? 0 : me.innerRadius;\n var outerRadius = reset && animationOpts.animateScale ? 0 : me.outerRadius;\n var valueAtIndexOrDefault = helpers.valueAtIndexOrDefault;\n\n helpers.extend(arc, {\n // Utility\n _datasetIndex: me.index,\n _index: index,\n\n // Desired view properties\n _model: {\n x: centerX + chart.offsetX,\n y: centerY + chart.offsetY,\n startAngle: startAngle,\n endAngle: endAngle,\n circumference: circumference,\n outerRadius: outerRadius,\n innerRadius: innerRadius,\n label: valueAtIndexOrDefault(dataset.label, index, chart.data.labels[index])\n }\n });\n\n var model = arc._model;\n // Resets the visual styles\n this.removeHoverStyle(arc);\n\n // Set correct angles if not resetting\n if (!reset || !animationOpts.animateRotate) {\n if (index === 0) {\n model.startAngle = opts.rotation;\n } else {\n model.startAngle = me.getMeta().data[index - 1]._model.endAngle;\n }\n\n model.endAngle = model.startAngle + model.circumference;\n }\n\n arc.pivot();\n },\n\n removeHoverStyle: function(arc) {\n Chart.DatasetController.prototype.removeHoverStyle.call(this, arc, this.chart.options.elements.arc);\n },\n\n calculateTotal: function() {\n var dataset = this.getDataset();\n var meta = this.getMeta();\n var total = 0;\n var value;\n\n helpers.each(meta.data, function(element, index) {\n value = dataset.data[index];\n if (!isNaN(value) && !element.hidden) {\n total += Math.abs(value);\n }\n });\n\n /* if (total === 0) {\n total = NaN;\n }*/\n\n return total;\n },\n\n calculateCircumference: function(value) {\n var total = this.getMeta().total;\n if (total > 0 && !isNaN(value)) {\n return (Math.PI * 2.0) * (value / total);\n }\n return 0;\n },\n\n // gets the max border or hover width to properly scale pie charts\n getMaxBorderWidth: function(arcs) {\n var max = 0;\n var index = this.index;\n var length = arcs.length;\n var borderWidth;\n var hoverWidth;\n\n for (var i = 0; i < length; i++) {\n borderWidth = arcs[i]._model ? arcs[i]._model.borderWidth : 0;\n hoverWidth = arcs[i]._chart ? arcs[i]._chart.config.data.datasets[index].hoverBorderWidth : 0;\n\n max = borderWidth > max ? borderWidth : max;\n max = hoverWidth > max ? hoverWidth : max;\n }\n return max;\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],18:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('line', {\n showLines: true,\n spanGaps: false,\n\n hover: {\n mode: 'label'\n },\n\n scales: {\n xAxes: [{\n type: 'category',\n id: 'x-axis-0'\n }],\n yAxes: [{\n type: 'linear',\n id: 'y-axis-0'\n }]\n }\n});\n\nmodule.exports = function(Chart) {\n\n function lineEnabled(dataset, options) {\n return helpers.valueOrDefault(dataset.showLine, options.showLines);\n }\n\n Chart.controllers.line = Chart.DatasetController.extend({\n\n datasetElementType: elements.Line,\n\n dataElementType: elements.Point,\n\n update: function(reset) {\n var me = this;\n var meta = me.getMeta();\n var line = meta.dataset;\n var points = meta.data || [];\n var options = me.chart.options;\n var lineElementOptions = options.elements.line;\n var scale = me.getScaleForId(meta.yAxisID);\n var i, ilen, custom;\n var dataset = me.getDataset();\n var showLine = lineEnabled(dataset, options);\n\n // Update Line\n if (showLine) {\n custom = line.custom || {};\n\n // Compatibility: If the properties are defined with only the old name, use those values\n if ((dataset.tension !== undefined) && (dataset.lineTension === undefined)) {\n dataset.lineTension = dataset.tension;\n }\n\n // Utility\n line._scale = scale;\n line._datasetIndex = me.index;\n // Data\n line._children = points;\n // Model\n line._model = {\n // Appearance\n // The default behavior of lines is to break at null values, according\n // to https://github.com/chartjs/Chart.js/issues/2435#issuecomment-216718158\n // This option gives lines the ability to span gaps\n spanGaps: dataset.spanGaps ? dataset.spanGaps : options.spanGaps,\n tension: custom.tension ? custom.tension : helpers.valueOrDefault(dataset.lineTension, lineElementOptions.tension),\n backgroundColor: custom.backgroundColor ? custom.backgroundColor : (dataset.backgroundColor || lineElementOptions.backgroundColor),\n borderWidth: custom.borderWidth ? custom.borderWidth : (dataset.borderWidth || lineElementOptions.borderWidth),\n borderColor: custom.borderColor ? custom.borderColor : (dataset.borderColor || lineElementOptions.borderColor),\n borderCapStyle: custom.borderCapStyle ? custom.borderCapStyle : (dataset.borderCapStyle || lineElementOptions.borderCapStyle),\n borderDash: custom.borderDash ? custom.borderDash : (dataset.borderDash || lineElementOptions.borderDash),\n borderDashOffset: custom.borderDashOffset ? custom.borderDashOffset : (dataset.borderDashOffset || lineElementOptions.borderDashOffset),\n borderJoinStyle: custom.borderJoinStyle ? custom.borderJoinStyle : (dataset.borderJoinStyle || lineElementOptions.borderJoinStyle),\n fill: custom.fill ? custom.fill : (dataset.fill !== undefined ? dataset.fill : lineElementOptions.fill),\n steppedLine: custom.steppedLine ? custom.steppedLine : helpers.valueOrDefault(dataset.steppedLine, lineElementOptions.stepped),\n cubicInterpolationMode: custom.cubicInterpolationMode ? custom.cubicInterpolationMode : helpers.valueOrDefault(dataset.cubicInterpolationMode, lineElementOptions.cubicInterpolationMode),\n };\n\n line.pivot();\n }\n\n // Update Points\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n me.updateElement(points[i], i, reset);\n }\n\n if (showLine && line._model.tension !== 0) {\n me.updateBezierControlPoints();\n }\n\n // Now pivot the point for animation\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n points[i].pivot();\n }\n },\n\n getPointBackgroundColor: function(point, index) {\n var backgroundColor = this.chart.options.elements.point.backgroundColor;\n var dataset = this.getDataset();\n var custom = point.custom || {};\n\n if (custom.backgroundColor) {\n backgroundColor = custom.backgroundColor;\n } else if (dataset.pointBackgroundColor) {\n backgroundColor = helpers.valueAtIndexOrDefault(dataset.pointBackgroundColor, index, backgroundColor);\n } else if (dataset.backgroundColor) {\n backgroundColor = dataset.backgroundColor;\n }\n\n return backgroundColor;\n },\n\n getPointBorderColor: function(point, index) {\n var borderColor = this.chart.options.elements.point.borderColor;\n var dataset = this.getDataset();\n var custom = point.custom || {};\n\n if (custom.borderColor) {\n borderColor = custom.borderColor;\n } else if (dataset.pointBorderColor) {\n borderColor = helpers.valueAtIndexOrDefault(dataset.pointBorderColor, index, borderColor);\n } else if (dataset.borderColor) {\n borderColor = dataset.borderColor;\n }\n\n return borderColor;\n },\n\n getPointBorderWidth: function(point, index) {\n var borderWidth = this.chart.options.elements.point.borderWidth;\n var dataset = this.getDataset();\n var custom = point.custom || {};\n\n if (!isNaN(custom.borderWidth)) {\n borderWidth = custom.borderWidth;\n } else if (!isNaN(dataset.pointBorderWidth) || helpers.isArray(dataset.pointBorderWidth)) {\n borderWidth = helpers.valueAtIndexOrDefault(dataset.pointBorderWidth, index, borderWidth);\n } else if (!isNaN(dataset.borderWidth)) {\n borderWidth = dataset.borderWidth;\n }\n\n return borderWidth;\n },\n\n updateElement: function(point, index, reset) {\n var me = this;\n var meta = me.getMeta();\n var custom = point.custom || {};\n var dataset = me.getDataset();\n var datasetIndex = me.index;\n var value = dataset.data[index];\n var yScale = me.getScaleForId(meta.yAxisID);\n var xScale = me.getScaleForId(meta.xAxisID);\n var pointOptions = me.chart.options.elements.point;\n var x, y;\n\n // Compatibility: If the properties are defined with only the old name, use those values\n if ((dataset.radius !== undefined) && (dataset.pointRadius === undefined)) {\n dataset.pointRadius = dataset.radius;\n }\n if ((dataset.hitRadius !== undefined) && (dataset.pointHitRadius === undefined)) {\n dataset.pointHitRadius = dataset.hitRadius;\n }\n\n x = xScale.getPixelForValue(typeof value === 'object' ? value : NaN, index, datasetIndex);\n y = reset ? yScale.getBasePixel() : me.calculatePointY(value, index, datasetIndex);\n\n // Utility\n point._xScale = xScale;\n point._yScale = yScale;\n point._datasetIndex = datasetIndex;\n point._index = index;\n\n // Desired view properties\n point._model = {\n x: x,\n y: y,\n skip: custom.skip || isNaN(x) || isNaN(y),\n // Appearance\n radius: custom.radius || helpers.valueAtIndexOrDefault(dataset.pointRadius, index, pointOptions.radius),\n pointStyle: custom.pointStyle || helpers.valueAtIndexOrDefault(dataset.pointStyle, index, pointOptions.pointStyle),\n backgroundColor: me.getPointBackgroundColor(point, index),\n borderColor: me.getPointBorderColor(point, index),\n borderWidth: me.getPointBorderWidth(point, index),\n tension: meta.dataset._model ? meta.dataset._model.tension : 0,\n steppedLine: meta.dataset._model ? meta.dataset._model.steppedLine : false,\n // Tooltip\n hitRadius: custom.hitRadius || helpers.valueAtIndexOrDefault(dataset.pointHitRadius, index, pointOptions.hitRadius)\n };\n },\n\n calculatePointY: function(value, index, datasetIndex) {\n var me = this;\n var chart = me.chart;\n var meta = me.getMeta();\n var yScale = me.getScaleForId(meta.yAxisID);\n var sumPos = 0;\n var sumNeg = 0;\n var i, ds, dsMeta;\n\n if (yScale.options.stacked) {\n for (i = 0; i < datasetIndex; i++) {\n ds = chart.data.datasets[i];\n dsMeta = chart.getDatasetMeta(i);\n if (dsMeta.type === 'line' && dsMeta.yAxisID === yScale.id && chart.isDatasetVisible(i)) {\n var stackedRightValue = Number(yScale.getRightValue(ds.data[index]));\n if (stackedRightValue < 0) {\n sumNeg += stackedRightValue || 0;\n } else {\n sumPos += stackedRightValue || 0;\n }\n }\n }\n\n var rightValue = Number(yScale.getRightValue(value));\n if (rightValue < 0) {\n return yScale.getPixelForValue(sumNeg + rightValue);\n }\n return yScale.getPixelForValue(sumPos + rightValue);\n }\n\n return yScale.getPixelForValue(value);\n },\n\n updateBezierControlPoints: function() {\n var me = this;\n var meta = me.getMeta();\n var area = me.chart.chartArea;\n var points = (meta.data || []);\n var i, ilen, point, model, controlPoints;\n\n // Only consider points that are drawn in case the spanGaps option is used\n if (meta.dataset._model.spanGaps) {\n points = points.filter(function(pt) {\n return !pt._model.skip;\n });\n }\n\n function capControlPoint(pt, min, max) {\n return Math.max(Math.min(pt, max), min);\n }\n\n if (meta.dataset._model.cubicInterpolationMode === 'monotone') {\n helpers.splineCurveMonotone(points);\n } else {\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n point = points[i];\n model = point._model;\n controlPoints = helpers.splineCurve(\n helpers.previousItem(points, i)._model,\n model,\n helpers.nextItem(points, i)._model,\n meta.dataset._model.tension\n );\n model.controlPointPreviousX = controlPoints.previous.x;\n model.controlPointPreviousY = controlPoints.previous.y;\n model.controlPointNextX = controlPoints.next.x;\n model.controlPointNextY = controlPoints.next.y;\n }\n }\n\n if (me.chart.options.elements.line.capBezierPoints) {\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n model = points[i]._model;\n model.controlPointPreviousX = capControlPoint(model.controlPointPreviousX, area.left, area.right);\n model.controlPointPreviousY = capControlPoint(model.controlPointPreviousY, area.top, area.bottom);\n model.controlPointNextX = capControlPoint(model.controlPointNextX, area.left, area.right);\n model.controlPointNextY = capControlPoint(model.controlPointNextY, area.top, area.bottom);\n }\n }\n },\n\n draw: function() {\n var me = this;\n var chart = me.chart;\n var meta = me.getMeta();\n var points = meta.data || [];\n var area = chart.chartArea;\n var ilen = points.length;\n var i = 0;\n\n helpers.canvas.clipArea(chart.ctx, area);\n\n if (lineEnabled(me.getDataset(), chart.options)) {\n meta.dataset.draw();\n }\n\n helpers.canvas.unclipArea(chart.ctx);\n\n // Draw the points\n for (; i < ilen; ++i) {\n points[i].draw(area);\n }\n },\n\n setHoverStyle: function(point) {\n // Point\n var dataset = this.chart.data.datasets[point._datasetIndex];\n var index = point._index;\n var custom = point.custom || {};\n var model = point._model;\n\n model.radius = custom.hoverRadius || helpers.valueAtIndexOrDefault(dataset.pointHoverRadius, index, this.chart.options.elements.point.hoverRadius);\n model.backgroundColor = custom.hoverBackgroundColor || helpers.valueAtIndexOrDefault(dataset.pointHoverBackgroundColor, index, helpers.getHoverColor(model.backgroundColor));\n model.borderColor = custom.hoverBorderColor || helpers.valueAtIndexOrDefault(dataset.pointHoverBorderColor, index, helpers.getHoverColor(model.borderColor));\n model.borderWidth = custom.hoverBorderWidth || helpers.valueAtIndexOrDefault(dataset.pointHoverBorderWidth, index, model.borderWidth);\n },\n\n removeHoverStyle: function(point) {\n var me = this;\n var dataset = me.chart.data.datasets[point._datasetIndex];\n var index = point._index;\n var custom = point.custom || {};\n var model = point._model;\n\n // Compatibility: If the properties are defined with only the old name, use those values\n if ((dataset.radius !== undefined) && (dataset.pointRadius === undefined)) {\n dataset.pointRadius = dataset.radius;\n }\n\n model.radius = custom.radius || helpers.valueAtIndexOrDefault(dataset.pointRadius, index, me.chart.options.elements.point.radius);\n model.backgroundColor = me.getPointBackgroundColor(point, index);\n model.borderColor = me.getPointBorderColor(point, index);\n model.borderWidth = me.getPointBorderWidth(point, index);\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],19:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('polarArea', {\n scale: {\n type: 'radialLinear',\n angleLines: {\n display: false\n },\n gridLines: {\n circular: true\n },\n pointLabels: {\n display: false\n },\n ticks: {\n beginAtZero: true\n }\n },\n\n // Boolean - Whether to animate the rotation of the chart\n animation: {\n animateRotate: true,\n animateScale: true\n },\n\n startAngle: -0.5 * Math.PI,\n legendCallback: function(chart) {\n var text = [];\n text.push('
    ');\n\n var data = chart.data;\n var datasets = data.datasets;\n var labels = data.labels;\n\n if (datasets.length) {\n for (var i = 0; i < datasets[0].data.length; ++i) {\n text.push('
  • ');\n if (labels[i]) {\n text.push(labels[i]);\n }\n text.push('
  • ');\n }\n }\n\n text.push('
');\n return text.join('');\n },\n legend: {\n labels: {\n generateLabels: function(chart) {\n var data = chart.data;\n if (data.labels.length && data.datasets.length) {\n return data.labels.map(function(label, i) {\n var meta = chart.getDatasetMeta(0);\n var ds = data.datasets[0];\n var arc = meta.data[i];\n var custom = arc.custom || {};\n var valueAtIndexOrDefault = helpers.valueAtIndexOrDefault;\n var arcOpts = chart.options.elements.arc;\n var fill = custom.backgroundColor ? custom.backgroundColor : valueAtIndexOrDefault(ds.backgroundColor, i, arcOpts.backgroundColor);\n var stroke = custom.borderColor ? custom.borderColor : valueAtIndexOrDefault(ds.borderColor, i, arcOpts.borderColor);\n var bw = custom.borderWidth ? custom.borderWidth : valueAtIndexOrDefault(ds.borderWidth, i, arcOpts.borderWidth);\n\n return {\n text: label,\n fillStyle: fill,\n strokeStyle: stroke,\n lineWidth: bw,\n hidden: isNaN(ds.data[i]) || meta.data[i].hidden,\n\n // Extra data used for toggling the correct item\n index: i\n };\n });\n }\n return [];\n }\n },\n\n onClick: function(e, legendItem) {\n var index = legendItem.index;\n var chart = this.chart;\n var i, ilen, meta;\n\n for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) {\n meta = chart.getDatasetMeta(i);\n meta.data[index].hidden = !meta.data[index].hidden;\n }\n\n chart.update();\n }\n },\n\n // Need to override these to give a nice default\n tooltips: {\n callbacks: {\n title: function() {\n return '';\n },\n label: function(item, data) {\n return data.labels[item.index] + ': ' + item.yLabel;\n }\n }\n }\n});\n\nmodule.exports = function(Chart) {\n\n Chart.controllers.polarArea = Chart.DatasetController.extend({\n\n dataElementType: elements.Arc,\n\n linkScales: helpers.noop,\n\n update: function(reset) {\n var me = this;\n var chart = me.chart;\n var chartArea = chart.chartArea;\n var meta = me.getMeta();\n var opts = chart.options;\n var arcOpts = opts.elements.arc;\n var minSize = Math.min(chartArea.right - chartArea.left, chartArea.bottom - chartArea.top);\n chart.outerRadius = Math.max((minSize - arcOpts.borderWidth / 2) / 2, 0);\n chart.innerRadius = Math.max(opts.cutoutPercentage ? (chart.outerRadius / 100) * (opts.cutoutPercentage) : 1, 0);\n chart.radiusLength = (chart.outerRadius - chart.innerRadius) / chart.getVisibleDatasetCount();\n\n me.outerRadius = chart.outerRadius - (chart.radiusLength * me.index);\n me.innerRadius = me.outerRadius - chart.radiusLength;\n\n meta.count = me.countVisibleElements();\n\n helpers.each(meta.data, function(arc, index) {\n me.updateElement(arc, index, reset);\n });\n },\n\n updateElement: function(arc, index, reset) {\n var me = this;\n var chart = me.chart;\n var dataset = me.getDataset();\n var opts = chart.options;\n var animationOpts = opts.animation;\n var scale = chart.scale;\n var labels = chart.data.labels;\n\n var circumference = me.calculateCircumference(dataset.data[index]);\n var centerX = scale.xCenter;\n var centerY = scale.yCenter;\n\n // If there is NaN data before us, we need to calculate the starting angle correctly.\n // We could be way more efficient here, but its unlikely that the polar area chart will have a lot of data\n var visibleCount = 0;\n var meta = me.getMeta();\n for (var i = 0; i < index; ++i) {\n if (!isNaN(dataset.data[i]) && !meta.data[i].hidden) {\n ++visibleCount;\n }\n }\n\n // var negHalfPI = -0.5 * Math.PI;\n var datasetStartAngle = opts.startAngle;\n var distance = arc.hidden ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]);\n var startAngle = datasetStartAngle + (circumference * visibleCount);\n var endAngle = startAngle + (arc.hidden ? 0 : circumference);\n\n var resetRadius = animationOpts.animateScale ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]);\n\n helpers.extend(arc, {\n // Utility\n _datasetIndex: me.index,\n _index: index,\n _scale: scale,\n\n // Desired view properties\n _model: {\n x: centerX,\n y: centerY,\n innerRadius: 0,\n outerRadius: reset ? resetRadius : distance,\n startAngle: reset && animationOpts.animateRotate ? datasetStartAngle : startAngle,\n endAngle: reset && animationOpts.animateRotate ? datasetStartAngle : endAngle,\n label: helpers.valueAtIndexOrDefault(labels, index, labels[index])\n }\n });\n\n // Apply border and fill style\n me.removeHoverStyle(arc);\n\n arc.pivot();\n },\n\n removeHoverStyle: function(arc) {\n Chart.DatasetController.prototype.removeHoverStyle.call(this, arc, this.chart.options.elements.arc);\n },\n\n countVisibleElements: function() {\n var dataset = this.getDataset();\n var meta = this.getMeta();\n var count = 0;\n\n helpers.each(meta.data, function(element, index) {\n if (!isNaN(dataset.data[index]) && !element.hidden) {\n count++;\n }\n });\n\n return count;\n },\n\n calculateCircumference: function(value) {\n var count = this.getMeta().count;\n if (count > 0 && !isNaN(value)) {\n return (2 * Math.PI) / count;\n }\n return 0;\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],20:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('radar', {\n scale: {\n type: 'radialLinear'\n },\n elements: {\n line: {\n tension: 0 // no bezier in radar\n }\n }\n});\n\nmodule.exports = function(Chart) {\n\n Chart.controllers.radar = Chart.DatasetController.extend({\n\n datasetElementType: elements.Line,\n\n dataElementType: elements.Point,\n\n linkScales: helpers.noop,\n\n update: function(reset) {\n var me = this;\n var meta = me.getMeta();\n var line = meta.dataset;\n var points = meta.data;\n var custom = line.custom || {};\n var dataset = me.getDataset();\n var lineElementOptions = me.chart.options.elements.line;\n var scale = me.chart.scale;\n\n // Compatibility: If the properties are defined with only the old name, use those values\n if ((dataset.tension !== undefined) && (dataset.lineTension === undefined)) {\n dataset.lineTension = dataset.tension;\n }\n\n helpers.extend(meta.dataset, {\n // Utility\n _datasetIndex: me.index,\n _scale: scale,\n // Data\n _children: points,\n _loop: true,\n // Model\n _model: {\n // Appearance\n tension: custom.tension ? custom.tension : helpers.valueOrDefault(dataset.lineTension, lineElementOptions.tension),\n backgroundColor: custom.backgroundColor ? custom.backgroundColor : (dataset.backgroundColor || lineElementOptions.backgroundColor),\n borderWidth: custom.borderWidth ? custom.borderWidth : (dataset.borderWidth || lineElementOptions.borderWidth),\n borderColor: custom.borderColor ? custom.borderColor : (dataset.borderColor || lineElementOptions.borderColor),\n fill: custom.fill ? custom.fill : (dataset.fill !== undefined ? dataset.fill : lineElementOptions.fill),\n borderCapStyle: custom.borderCapStyle ? custom.borderCapStyle : (dataset.borderCapStyle || lineElementOptions.borderCapStyle),\n borderDash: custom.borderDash ? custom.borderDash : (dataset.borderDash || lineElementOptions.borderDash),\n borderDashOffset: custom.borderDashOffset ? custom.borderDashOffset : (dataset.borderDashOffset || lineElementOptions.borderDashOffset),\n borderJoinStyle: custom.borderJoinStyle ? custom.borderJoinStyle : (dataset.borderJoinStyle || lineElementOptions.borderJoinStyle),\n }\n });\n\n meta.dataset.pivot();\n\n // Update Points\n helpers.each(points, function(point, index) {\n me.updateElement(point, index, reset);\n }, me);\n\n // Update bezier control points\n me.updateBezierControlPoints();\n },\n updateElement: function(point, index, reset) {\n var me = this;\n var custom = point.custom || {};\n var dataset = me.getDataset();\n var scale = me.chart.scale;\n var pointElementOptions = me.chart.options.elements.point;\n var pointPosition = scale.getPointPositionForValue(index, dataset.data[index]);\n\n // Compatibility: If the properties are defined with only the old name, use those values\n if ((dataset.radius !== undefined) && (dataset.pointRadius === undefined)) {\n dataset.pointRadius = dataset.radius;\n }\n if ((dataset.hitRadius !== undefined) && (dataset.pointHitRadius === undefined)) {\n dataset.pointHitRadius = dataset.hitRadius;\n }\n\n helpers.extend(point, {\n // Utility\n _datasetIndex: me.index,\n _index: index,\n _scale: scale,\n\n // Desired view properties\n _model: {\n x: reset ? scale.xCenter : pointPosition.x, // value not used in dataset scale, but we want a consistent API between scales\n y: reset ? scale.yCenter : pointPosition.y,\n\n // Appearance\n tension: custom.tension ? custom.tension : helpers.valueOrDefault(dataset.lineTension, me.chart.options.elements.line.tension),\n radius: custom.radius ? custom.radius : helpers.valueAtIndexOrDefault(dataset.pointRadius, index, pointElementOptions.radius),\n backgroundColor: custom.backgroundColor ? custom.backgroundColor : helpers.valueAtIndexOrDefault(dataset.pointBackgroundColor, index, pointElementOptions.backgroundColor),\n borderColor: custom.borderColor ? custom.borderColor : helpers.valueAtIndexOrDefault(dataset.pointBorderColor, index, pointElementOptions.borderColor),\n borderWidth: custom.borderWidth ? custom.borderWidth : helpers.valueAtIndexOrDefault(dataset.pointBorderWidth, index, pointElementOptions.borderWidth),\n pointStyle: custom.pointStyle ? custom.pointStyle : helpers.valueAtIndexOrDefault(dataset.pointStyle, index, pointElementOptions.pointStyle),\n\n // Tooltip\n hitRadius: custom.hitRadius ? custom.hitRadius : helpers.valueAtIndexOrDefault(dataset.pointHitRadius, index, pointElementOptions.hitRadius)\n }\n });\n\n point._model.skip = custom.skip ? custom.skip : (isNaN(point._model.x) || isNaN(point._model.y));\n },\n updateBezierControlPoints: function() {\n var chartArea = this.chart.chartArea;\n var meta = this.getMeta();\n\n helpers.each(meta.data, function(point, index) {\n var model = point._model;\n var controlPoints = helpers.splineCurve(\n helpers.previousItem(meta.data, index, true)._model,\n model,\n helpers.nextItem(meta.data, index, true)._model,\n model.tension\n );\n\n // Prevent the bezier going outside of the bounds of the graph\n model.controlPointPreviousX = Math.max(Math.min(controlPoints.previous.x, chartArea.right), chartArea.left);\n model.controlPointPreviousY = Math.max(Math.min(controlPoints.previous.y, chartArea.bottom), chartArea.top);\n\n model.controlPointNextX = Math.max(Math.min(controlPoints.next.x, chartArea.right), chartArea.left);\n model.controlPointNextY = Math.max(Math.min(controlPoints.next.y, chartArea.bottom), chartArea.top);\n\n // Now pivot the point for animation\n point.pivot();\n });\n },\n\n setHoverStyle: function(point) {\n // Point\n var dataset = this.chart.data.datasets[point._datasetIndex];\n var custom = point.custom || {};\n var index = point._index;\n var model = point._model;\n\n model.radius = custom.hoverRadius ? custom.hoverRadius : helpers.valueAtIndexOrDefault(dataset.pointHoverRadius, index, this.chart.options.elements.point.hoverRadius);\n model.backgroundColor = custom.hoverBackgroundColor ? custom.hoverBackgroundColor : helpers.valueAtIndexOrDefault(dataset.pointHoverBackgroundColor, index, helpers.getHoverColor(model.backgroundColor));\n model.borderColor = custom.hoverBorderColor ? custom.hoverBorderColor : helpers.valueAtIndexOrDefault(dataset.pointHoverBorderColor, index, helpers.getHoverColor(model.borderColor));\n model.borderWidth = custom.hoverBorderWidth ? custom.hoverBorderWidth : helpers.valueAtIndexOrDefault(dataset.pointHoverBorderWidth, index, model.borderWidth);\n },\n\n removeHoverStyle: function(point) {\n var dataset = this.chart.data.datasets[point._datasetIndex];\n var custom = point.custom || {};\n var index = point._index;\n var model = point._model;\n var pointElementOptions = this.chart.options.elements.point;\n\n model.radius = custom.radius ? custom.radius : helpers.valueAtIndexOrDefault(dataset.pointRadius, index, pointElementOptions.radius);\n model.backgroundColor = custom.backgroundColor ? custom.backgroundColor : helpers.valueAtIndexOrDefault(dataset.pointBackgroundColor, index, pointElementOptions.backgroundColor);\n model.borderColor = custom.borderColor ? custom.borderColor : helpers.valueAtIndexOrDefault(dataset.pointBorderColor, index, pointElementOptions.borderColor);\n model.borderWidth = custom.borderWidth ? custom.borderWidth : helpers.valueAtIndexOrDefault(dataset.pointBorderWidth, index, pointElementOptions.borderWidth);\n }\n });\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],21:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\n\ndefaults._set('scatter', {\n hover: {\n mode: 'single'\n },\n\n scales: {\n xAxes: [{\n id: 'x-axis-1', // need an ID so datasets can reference the scale\n type: 'linear', // scatter should not use a category axis\n position: 'bottom'\n }],\n yAxes: [{\n id: 'y-axis-1',\n type: 'linear',\n position: 'left'\n }]\n },\n\n showLines: false,\n\n tooltips: {\n callbacks: {\n title: function() {\n return ''; // doesn't make sense for scatter since data are formatted as a point\n },\n label: function(item) {\n return '(' + item.xLabel + ', ' + item.yLabel + ')';\n }\n }\n }\n});\n\nmodule.exports = function(Chart) {\n\n // Scatter charts use line controllers\n Chart.controllers.scatter = Chart.controllers.line;\n\n};\n\n},{\"25\":25}],22:[function(require,module,exports){\n/* global window: false */\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n animation: {\n duration: 1000,\n easing: 'easeOutQuart',\n onProgress: helpers.noop,\n onComplete: helpers.noop\n }\n});\n\nmodule.exports = function(Chart) {\n\n Chart.Animation = Element.extend({\n chart: null, // the animation associated chart instance\n currentStep: 0, // the current animation step\n numSteps: 60, // default number of steps\n easing: '', // the easing to use for this animation\n render: null, // render function used by the animation service\n\n onAnimationProgress: null, // user specified callback to fire on each step of the animation\n onAnimationComplete: null, // user specified callback to fire when the animation finishes\n });\n\n Chart.animationService = {\n frameDuration: 17,\n animations: [],\n dropFrames: 0,\n request: null,\n\n /**\n * @param {Chart} chart - The chart to animate.\n * @param {Chart.Animation} animation - The animation that we will animate.\n * @param {Number} duration - The animation duration in ms.\n * @param {Boolean} lazy - if true, the chart is not marked as animating to enable more responsive interactions\n */\n addAnimation: function(chart, animation, duration, lazy) {\n var animations = this.animations;\n var i, ilen;\n\n animation.chart = chart;\n\n if (!lazy) {\n chart.animating = true;\n }\n\n for (i = 0, ilen = animations.length; i < ilen; ++i) {\n if (animations[i].chart === chart) {\n animations[i] = animation;\n return;\n }\n }\n\n animations.push(animation);\n\n // If there are no animations queued, manually kickstart a digest, for lack of a better word\n if (animations.length === 1) {\n this.requestAnimationFrame();\n }\n },\n\n cancelAnimation: function(chart) {\n var index = helpers.findIndex(this.animations, function(animation) {\n return animation.chart === chart;\n });\n\n if (index !== -1) {\n this.animations.splice(index, 1);\n chart.animating = false;\n }\n },\n\n requestAnimationFrame: function() {\n var me = this;\n if (me.request === null) {\n // Skip animation frame requests until the active one is executed.\n // This can happen when processing mouse events, e.g. 'mousemove'\n // and 'mouseout' events will trigger multiple renders.\n me.request = helpers.requestAnimFrame.call(window, function() {\n me.request = null;\n me.startDigest();\n });\n }\n },\n\n /**\n * @private\n */\n startDigest: function() {\n var me = this;\n var startTime = Date.now();\n var framesToDrop = 0;\n\n if (me.dropFrames > 1) {\n framesToDrop = Math.floor(me.dropFrames);\n me.dropFrames = me.dropFrames % 1;\n }\n\n me.advance(1 + framesToDrop);\n\n var endTime = Date.now();\n\n me.dropFrames += (endTime - startTime) / me.frameDuration;\n\n // Do we have more stuff to animate?\n if (me.animations.length > 0) {\n me.requestAnimationFrame();\n }\n },\n\n /**\n * @private\n */\n advance: function(count) {\n var animations = this.animations;\n var animation, chart;\n var i = 0;\n\n while (i < animations.length) {\n animation = animations[i];\n chart = animation.chart;\n\n animation.currentStep = (animation.currentStep || 0) + count;\n animation.currentStep = Math.min(animation.currentStep, animation.numSteps);\n\n helpers.callback(animation.render, [chart, animation], chart);\n helpers.callback(animation.onAnimationProgress, [animation], chart);\n\n if (animation.currentStep >= animation.numSteps) {\n helpers.callback(animation.onAnimationComplete, [animation], chart);\n chart.animating = false;\n animations.splice(i, 1);\n } else {\n ++i;\n }\n }\n }\n };\n\n /**\n * Provided for backward compatibility, use Chart.Animation instead\n * @prop Chart.Animation#animationObject\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n */\n Object.defineProperty(Chart.Animation.prototype, 'animationObject', {\n get: function() {\n return this;\n }\n });\n\n /**\n * Provided for backward compatibility, use Chart.Animation#chart instead\n * @prop Chart.Animation#chartInstance\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n */\n Object.defineProperty(Chart.Animation.prototype, 'chartInstance', {\n get: function() {\n return this.chart;\n },\n set: function(value) {\n this.chart = value;\n }\n });\n\n};\n\n},{\"25\":25,\"26\":26,\"45\":45}],23:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar helpers = require(45);\nvar Interaction = require(28);\nvar platform = require(48);\n\nmodule.exports = function(Chart) {\n var plugins = Chart.plugins;\n\n // Create a dictionary of chart types, to allow for extension of existing types\n Chart.types = {};\n\n // Store a reference to each instance - allowing us to globally resize chart instances on window resize.\n // Destroy method on the chart will remove the instance of the chart from this reference.\n Chart.instances = {};\n\n // Controllers available for dataset visualization eg. bar, line, slice, etc.\n Chart.controllers = {};\n\n /**\n * Initializes the given config with global and chart default values.\n */\n function initConfig(config) {\n config = config || {};\n\n // Do NOT use configMerge() for the data object because this method merges arrays\n // and so would change references to labels and datasets, preventing data updates.\n var data = config.data = config.data || {};\n data.datasets = data.datasets || [];\n data.labels = data.labels || [];\n\n config.options = helpers.configMerge(\n defaults.global,\n defaults[config.type],\n config.options || {});\n\n return config;\n }\n\n /**\n * Updates the config of the chart\n * @param chart {Chart} chart to update the options for\n */\n function updateConfig(chart) {\n var newOptions = chart.options;\n\n // Update Scale(s) with options\n if (newOptions.scale) {\n chart.scale.options = newOptions.scale;\n } else if (newOptions.scales) {\n newOptions.scales.xAxes.concat(newOptions.scales.yAxes).forEach(function(scaleOptions) {\n chart.scales[scaleOptions.id].options = scaleOptions;\n });\n }\n\n // Tooltip\n chart.tooltip._options = newOptions.tooltips;\n }\n\n function positionIsHorizontal(position) {\n return position === 'top' || position === 'bottom';\n }\n\n helpers.extend(Chart.prototype, /** @lends Chart */ {\n /**\n * @private\n */\n construct: function(item, config) {\n var me = this;\n\n config = initConfig(config);\n\n var context = platform.acquireContext(item, config);\n var canvas = context && context.canvas;\n var height = canvas && canvas.height;\n var width = canvas && canvas.width;\n\n me.id = helpers.uid();\n me.ctx = context;\n me.canvas = canvas;\n me.config = config;\n me.width = width;\n me.height = height;\n me.aspectRatio = height ? width / height : null;\n me.options = config.options;\n me._bufferedRender = false;\n\n /**\n * Provided for backward compatibility, Chart and Chart.Controller have been merged,\n * the \"instance\" still need to be defined since it might be called from plugins.\n * @prop Chart#chart\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n * @private\n */\n me.chart = me;\n me.controller = me; // chart.chart.controller #inception\n\n // Add the chart instance to the global namespace\n Chart.instances[me.id] = me;\n\n // Define alias to the config data: `chart.data === chart.config.data`\n Object.defineProperty(me, 'data', {\n get: function() {\n return me.config.data;\n },\n set: function(value) {\n me.config.data = value;\n }\n });\n\n if (!context || !canvas) {\n // The given item is not a compatible context2d element, let's return before finalizing\n // the chart initialization but after setting basic chart / controller properties that\n // can help to figure out that the chart is not valid (e.g chart.canvas !== null);\n // https://github.com/chartjs/Chart.js/issues/2807\n console.error(\"Failed to create chart: can't acquire context from the given item\");\n return;\n }\n\n me.initialize();\n me.update();\n },\n\n /**\n * @private\n */\n initialize: function() {\n var me = this;\n\n // Before init plugin notification\n plugins.notify(me, 'beforeInit');\n\n helpers.retinaScale(me, me.options.devicePixelRatio);\n\n me.bindEvents();\n\n if (me.options.responsive) {\n // Initial resize before chart draws (must be silent to preserve initial animations).\n me.resize(true);\n }\n\n // Make sure scales have IDs and are built before we build any controllers.\n me.ensureScalesHaveIDs();\n me.buildScales();\n me.initToolTip();\n\n // After init plugin notification\n plugins.notify(me, 'afterInit');\n\n return me;\n },\n\n clear: function() {\n helpers.canvas.clear(this);\n return this;\n },\n\n stop: function() {\n // Stops any current animation loop occurring\n Chart.animationService.cancelAnimation(this);\n return this;\n },\n\n resize: function(silent) {\n var me = this;\n var options = me.options;\n var canvas = me.canvas;\n var aspectRatio = (options.maintainAspectRatio && me.aspectRatio) || null;\n\n // the canvas render width and height will be casted to integers so make sure that\n // the canvas display style uses the same integer values to avoid blurring effect.\n\n // Set to 0 instead of canvas.size because the size defaults to 300x150 if the element is collased\n var newWidth = Math.max(0, Math.floor(helpers.getMaximumWidth(canvas)));\n var newHeight = Math.max(0, Math.floor(aspectRatio ? newWidth / aspectRatio : helpers.getMaximumHeight(canvas)));\n\n if (me.width === newWidth && me.height === newHeight) {\n return;\n }\n\n canvas.width = me.width = newWidth;\n canvas.height = me.height = newHeight;\n canvas.style.width = newWidth + 'px';\n canvas.style.height = newHeight + 'px';\n\n helpers.retinaScale(me, options.devicePixelRatio);\n\n if (!silent) {\n // Notify any plugins about the resize\n var newSize = {width: newWidth, height: newHeight};\n plugins.notify(me, 'resize', [newSize]);\n\n // Notify of resize\n if (me.options.onResize) {\n me.options.onResize(me, newSize);\n }\n\n me.stop();\n me.update(me.options.responsiveAnimationDuration);\n }\n },\n\n ensureScalesHaveIDs: function() {\n var options = this.options;\n var scalesOptions = options.scales || {};\n var scaleOptions = options.scale;\n\n helpers.each(scalesOptions.xAxes, function(xAxisOptions, index) {\n xAxisOptions.id = xAxisOptions.id || ('x-axis-' + index);\n });\n\n helpers.each(scalesOptions.yAxes, function(yAxisOptions, index) {\n yAxisOptions.id = yAxisOptions.id || ('y-axis-' + index);\n });\n\n if (scaleOptions) {\n scaleOptions.id = scaleOptions.id || 'scale';\n }\n },\n\n /**\n * Builds a map of scale ID to scale object for future lookup.\n */\n buildScales: function() {\n var me = this;\n var options = me.options;\n var scales = me.scales = {};\n var items = [];\n\n if (options.scales) {\n items = items.concat(\n (options.scales.xAxes || []).map(function(xAxisOptions) {\n return {options: xAxisOptions, dtype: 'category', dposition: 'bottom'};\n }),\n (options.scales.yAxes || []).map(function(yAxisOptions) {\n return {options: yAxisOptions, dtype: 'linear', dposition: 'left'};\n })\n );\n }\n\n if (options.scale) {\n items.push({\n options: options.scale,\n dtype: 'radialLinear',\n isDefault: true,\n dposition: 'chartArea'\n });\n }\n\n helpers.each(items, function(item) {\n var scaleOptions = item.options;\n var scaleType = helpers.valueOrDefault(scaleOptions.type, item.dtype);\n var scaleClass = Chart.scaleService.getScaleConstructor(scaleType);\n if (!scaleClass) {\n return;\n }\n\n if (positionIsHorizontal(scaleOptions.position) !== positionIsHorizontal(item.dposition)) {\n scaleOptions.position = item.dposition;\n }\n\n var scale = new scaleClass({\n id: scaleOptions.id,\n options: scaleOptions,\n ctx: me.ctx,\n chart: me\n });\n\n scales[scale.id] = scale;\n scale.mergeTicksOptions();\n\n // TODO(SB): I think we should be able to remove this custom case (options.scale)\n // and consider it as a regular scale part of the \"scales\"\" map only! This would\n // make the logic easier and remove some useless? custom code.\n if (item.isDefault) {\n me.scale = scale;\n }\n });\n\n Chart.scaleService.addScalesToLayout(this);\n },\n\n buildOrUpdateControllers: function() {\n var me = this;\n var types = [];\n var newControllers = [];\n\n helpers.each(me.data.datasets, function(dataset, datasetIndex) {\n var meta = me.getDatasetMeta(datasetIndex);\n var type = dataset.type || me.config.type;\n\n if (meta.type && meta.type !== type) {\n me.destroyDatasetMeta(datasetIndex);\n meta = me.getDatasetMeta(datasetIndex);\n }\n meta.type = type;\n\n types.push(meta.type);\n\n if (meta.controller) {\n meta.controller.updateIndex(datasetIndex);\n } else {\n var ControllerClass = Chart.controllers[meta.type];\n if (ControllerClass === undefined) {\n throw new Error('\"' + meta.type + '\" is not a chart type.');\n }\n\n meta.controller = new ControllerClass(me, datasetIndex);\n newControllers.push(meta.controller);\n }\n }, me);\n\n return newControllers;\n },\n\n /**\n * Reset the elements of all datasets\n * @private\n */\n resetElements: function() {\n var me = this;\n helpers.each(me.data.datasets, function(dataset, datasetIndex) {\n me.getDatasetMeta(datasetIndex).controller.reset();\n }, me);\n },\n\n /**\n * Resets the chart back to it's state before the initial animation\n */\n reset: function() {\n this.resetElements();\n this.tooltip.initialize();\n },\n\n update: function(config) {\n var me = this;\n\n if (!config || typeof config !== 'object') {\n // backwards compatibility\n config = {\n duration: config,\n lazy: arguments[1]\n };\n }\n\n updateConfig(me);\n\n if (plugins.notify(me, 'beforeUpdate') === false) {\n return;\n }\n\n // In case the entire data object changed\n me.tooltip._data = me.data;\n\n // Make sure dataset controllers are updated and new controllers are reset\n var newControllers = me.buildOrUpdateControllers();\n\n // Make sure all dataset controllers have correct meta data counts\n helpers.each(me.data.datasets, function(dataset, datasetIndex) {\n me.getDatasetMeta(datasetIndex).controller.buildOrUpdateElements();\n }, me);\n\n me.updateLayout();\n\n // Can only reset the new controllers after the scales have been updated\n helpers.each(newControllers, function(controller) {\n controller.reset();\n });\n\n me.updateDatasets();\n\n // Need to reset tooltip in case it is displayed with elements that are removed\n // after update.\n me.tooltip.initialize();\n\n // Last active contains items that were previously in the tooltip.\n // When we reset the tooltip, we need to clear it\n me.lastActive = [];\n\n // Do this before render so that any plugins that need final scale updates can use it\n plugins.notify(me, 'afterUpdate');\n\n if (me._bufferedRender) {\n me._bufferedRequest = {\n duration: config.duration,\n easing: config.easing,\n lazy: config.lazy\n };\n } else {\n me.render(config);\n }\n },\n\n /**\n * Updates the chart layout unless a plugin returns `false` to the `beforeLayout`\n * hook, in which case, plugins will not be called on `afterLayout`.\n * @private\n */\n updateLayout: function() {\n var me = this;\n\n if (plugins.notify(me, 'beforeLayout') === false) {\n return;\n }\n\n Chart.layoutService.update(this, this.width, this.height);\n\n /**\n * Provided for backward compatibility, use `afterLayout` instead.\n * @method IPlugin#afterScaleUpdate\n * @deprecated since version 2.5.0\n * @todo remove at version 3\n * @private\n */\n plugins.notify(me, 'afterScaleUpdate');\n plugins.notify(me, 'afterLayout');\n },\n\n /**\n * Updates all datasets unless a plugin returns `false` to the `beforeDatasetsUpdate`\n * hook, in which case, plugins will not be called on `afterDatasetsUpdate`.\n * @private\n */\n updateDatasets: function() {\n var me = this;\n\n if (plugins.notify(me, 'beforeDatasetsUpdate') === false) {\n return;\n }\n\n for (var i = 0, ilen = me.data.datasets.length; i < ilen; ++i) {\n me.updateDataset(i);\n }\n\n plugins.notify(me, 'afterDatasetsUpdate');\n },\n\n /**\n * Updates dataset at index unless a plugin returns `false` to the `beforeDatasetUpdate`\n * hook, in which case, plugins will not be called on `afterDatasetUpdate`.\n * @private\n */\n updateDataset: function(index) {\n var me = this;\n var meta = me.getDatasetMeta(index);\n var args = {\n meta: meta,\n index: index\n };\n\n if (plugins.notify(me, 'beforeDatasetUpdate', [args]) === false) {\n return;\n }\n\n meta.controller.update();\n\n plugins.notify(me, 'afterDatasetUpdate', [args]);\n },\n\n render: function(config) {\n var me = this;\n\n if (!config || typeof config !== 'object') {\n // backwards compatibility\n config = {\n duration: config,\n lazy: arguments[1]\n };\n }\n\n var duration = config.duration;\n var lazy = config.lazy;\n\n if (plugins.notify(me, 'beforeRender') === false) {\n return;\n }\n\n var animationOptions = me.options.animation;\n var onComplete = function(animation) {\n plugins.notify(me, 'afterRender');\n helpers.callback(animationOptions && animationOptions.onComplete, [animation], me);\n };\n\n if (animationOptions && ((typeof duration !== 'undefined' && duration !== 0) || (typeof duration === 'undefined' && animationOptions.duration !== 0))) {\n var animation = new Chart.Animation({\n numSteps: (duration || animationOptions.duration) / 16.66, // 60 fps\n easing: config.easing || animationOptions.easing,\n\n render: function(chart, animationObject) {\n var easingFunction = helpers.easing.effects[animationObject.easing];\n var currentStep = animationObject.currentStep;\n var stepDecimal = currentStep / animationObject.numSteps;\n\n chart.draw(easingFunction(stepDecimal), stepDecimal, currentStep);\n },\n\n onAnimationProgress: animationOptions.onProgress,\n onAnimationComplete: onComplete\n });\n\n Chart.animationService.addAnimation(me, animation, duration, lazy);\n } else {\n me.draw();\n\n // See https://github.com/chartjs/Chart.js/issues/3781\n onComplete(new Chart.Animation({numSteps: 0, chart: me}));\n }\n\n return me;\n },\n\n draw: function(easingValue) {\n var me = this;\n\n me.clear();\n\n if (helpers.isNullOrUndef(easingValue)) {\n easingValue = 1;\n }\n\n me.transition(easingValue);\n\n if (plugins.notify(me, 'beforeDraw', [easingValue]) === false) {\n return;\n }\n\n // Draw all the scales\n helpers.each(me.boxes, function(box) {\n box.draw(me.chartArea);\n }, me);\n\n if (me.scale) {\n me.scale.draw();\n }\n\n me.drawDatasets(easingValue);\n me._drawTooltip(easingValue);\n\n plugins.notify(me, 'afterDraw', [easingValue]);\n },\n\n /**\n * @private\n */\n transition: function(easingValue) {\n var me = this;\n\n for (var i = 0, ilen = (me.data.datasets || []).length; i < ilen; ++i) {\n if (me.isDatasetVisible(i)) {\n me.getDatasetMeta(i).controller.transition(easingValue);\n }\n }\n\n me.tooltip.transition(easingValue);\n },\n\n /**\n * Draws all datasets unless a plugin returns `false` to the `beforeDatasetsDraw`\n * hook, in which case, plugins will not be called on `afterDatasetsDraw`.\n * @private\n */\n drawDatasets: function(easingValue) {\n var me = this;\n\n if (plugins.notify(me, 'beforeDatasetsDraw', [easingValue]) === false) {\n return;\n }\n\n // Draw datasets reversed to support proper line stacking\n for (var i = (me.data.datasets || []).length - 1; i >= 0; --i) {\n if (me.isDatasetVisible(i)) {\n me.drawDataset(i, easingValue);\n }\n }\n\n plugins.notify(me, 'afterDatasetsDraw', [easingValue]);\n },\n\n /**\n * Draws dataset at index unless a plugin returns `false` to the `beforeDatasetDraw`\n * hook, in which case, plugins will not be called on `afterDatasetDraw`.\n * @private\n */\n drawDataset: function(index, easingValue) {\n var me = this;\n var meta = me.getDatasetMeta(index);\n var args = {\n meta: meta,\n index: index,\n easingValue: easingValue\n };\n\n if (plugins.notify(me, 'beforeDatasetDraw', [args]) === false) {\n return;\n }\n\n meta.controller.draw(easingValue);\n\n plugins.notify(me, 'afterDatasetDraw', [args]);\n },\n\n /**\n * Draws tooltip unless a plugin returns `false` to the `beforeTooltipDraw`\n * hook, in which case, plugins will not be called on `afterTooltipDraw`.\n * @private\n */\n _drawTooltip: function(easingValue) {\n var me = this;\n var tooltip = me.tooltip;\n var args = {\n tooltip: tooltip,\n easingValue: easingValue\n };\n\n if (plugins.notify(me, 'beforeTooltipDraw', [args]) === false) {\n return;\n }\n\n tooltip.draw();\n\n plugins.notify(me, 'afterTooltipDraw', [args]);\n },\n\n // Get the single element that was clicked on\n // @return : An object containing the dataset index and element index of the matching element. Also contains the rectangle that was draw\n getElementAtEvent: function(e) {\n return Interaction.modes.single(this, e);\n },\n\n getElementsAtEvent: function(e) {\n return Interaction.modes.label(this, e, {intersect: true});\n },\n\n getElementsAtXAxis: function(e) {\n return Interaction.modes['x-axis'](this, e, {intersect: true});\n },\n\n getElementsAtEventForMode: function(e, mode, options) {\n var method = Interaction.modes[mode];\n if (typeof method === 'function') {\n return method(this, e, options);\n }\n\n return [];\n },\n\n getDatasetAtEvent: function(e) {\n return Interaction.modes.dataset(this, e, {intersect: true});\n },\n\n getDatasetMeta: function(datasetIndex) {\n var me = this;\n var dataset = me.data.datasets[datasetIndex];\n if (!dataset._meta) {\n dataset._meta = {};\n }\n\n var meta = dataset._meta[me.id];\n if (!meta) {\n meta = dataset._meta[me.id] = {\n type: null,\n data: [],\n dataset: null,\n controller: null,\n hidden: null, // See isDatasetVisible() comment\n xAxisID: null,\n yAxisID: null\n };\n }\n\n return meta;\n },\n\n getVisibleDatasetCount: function() {\n var count = 0;\n for (var i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n if (this.isDatasetVisible(i)) {\n count++;\n }\n }\n return count;\n },\n\n isDatasetVisible: function(datasetIndex) {\n var meta = this.getDatasetMeta(datasetIndex);\n\n // meta.hidden is a per chart dataset hidden flag override with 3 states: if true or false,\n // the dataset.hidden value is ignored, else if null, the dataset hidden state is returned.\n return typeof meta.hidden === 'boolean' ? !meta.hidden : !this.data.datasets[datasetIndex].hidden;\n },\n\n generateLegend: function() {\n return this.options.legendCallback(this);\n },\n\n /**\n * @private\n */\n destroyDatasetMeta: function(datasetIndex) {\n var id = this.id;\n var dataset = this.data.datasets[datasetIndex];\n var meta = dataset._meta && dataset._meta[id];\n\n if (meta) {\n meta.controller.destroy();\n delete dataset._meta[id];\n }\n },\n\n destroy: function() {\n var me = this;\n var canvas = me.canvas;\n var i, ilen;\n\n me.stop();\n\n // dataset controllers need to cleanup associated data\n for (i = 0, ilen = me.data.datasets.length; i < ilen; ++i) {\n me.destroyDatasetMeta(i);\n }\n\n if (canvas) {\n me.unbindEvents();\n helpers.canvas.clear(me);\n platform.releaseContext(me.ctx);\n me.canvas = null;\n me.ctx = null;\n }\n\n plugins.notify(me, 'destroy');\n\n delete Chart.instances[me.id];\n },\n\n toBase64Image: function() {\n return this.canvas.toDataURL.apply(this.canvas, arguments);\n },\n\n initToolTip: function() {\n var me = this;\n me.tooltip = new Chart.Tooltip({\n _chart: me,\n _chartInstance: me, // deprecated, backward compatibility\n _data: me.data,\n _options: me.options.tooltips\n }, me);\n },\n\n /**\n * @private\n */\n bindEvents: function() {\n var me = this;\n var listeners = me._listeners = {};\n var listener = function() {\n me.eventHandler.apply(me, arguments);\n };\n\n helpers.each(me.options.events, function(type) {\n platform.addEventListener(me, type, listener);\n listeners[type] = listener;\n });\n\n // Elements used to detect size change should not be injected for non responsive charts.\n // See https://github.com/chartjs/Chart.js/issues/2210\n if (me.options.responsive) {\n listener = function() {\n me.resize();\n };\n\n platform.addEventListener(me, 'resize', listener);\n listeners.resize = listener;\n }\n },\n\n /**\n * @private\n */\n unbindEvents: function() {\n var me = this;\n var listeners = me._listeners;\n if (!listeners) {\n return;\n }\n\n delete me._listeners;\n helpers.each(listeners, function(listener, type) {\n platform.removeEventListener(me, type, listener);\n });\n },\n\n updateHoverStyle: function(elements, mode, enabled) {\n var method = enabled ? 'setHoverStyle' : 'removeHoverStyle';\n var element, i, ilen;\n\n for (i = 0, ilen = elements.length; i < ilen; ++i) {\n element = elements[i];\n if (element) {\n this.getDatasetMeta(element._datasetIndex).controller[method](element);\n }\n }\n },\n\n /**\n * @private\n */\n eventHandler: function(e) {\n var me = this;\n var tooltip = me.tooltip;\n\n if (plugins.notify(me, 'beforeEvent', [e]) === false) {\n return;\n }\n\n // Buffer any update calls so that renders do not occur\n me._bufferedRender = true;\n me._bufferedRequest = null;\n\n var changed = me.handleEvent(e);\n changed |= tooltip && tooltip.handleEvent(e);\n\n plugins.notify(me, 'afterEvent', [e]);\n\n var bufferedRequest = me._bufferedRequest;\n if (bufferedRequest) {\n // If we have an update that was triggered, we need to do a normal render\n me.render(bufferedRequest);\n } else if (changed && !me.animating) {\n // If entering, leaving, or changing elements, animate the change via pivot\n me.stop();\n\n // We only need to render at this point. Updating will cause scales to be\n // recomputed generating flicker & using more memory than necessary.\n me.render(me.options.hover.animationDuration, true);\n }\n\n me._bufferedRender = false;\n me._bufferedRequest = null;\n\n return me;\n },\n\n /**\n * Handle an event\n * @private\n * @param {IEvent} event the event to handle\n * @return {Boolean} true if the chart needs to re-render\n */\n handleEvent: function(e) {\n var me = this;\n var options = me.options || {};\n var hoverOptions = options.hover;\n var changed = false;\n\n me.lastActive = me.lastActive || [];\n\n // Find Active Elements for hover and tooltips\n if (e.type === 'mouseout') {\n me.active = [];\n } else {\n me.active = me.getElementsAtEventForMode(e, hoverOptions.mode, hoverOptions);\n }\n\n // Invoke onHover hook\n // Need to call with native event here to not break backwards compatibility\n helpers.callback(options.onHover || options.hover.onHover, [e.native, me.active], me);\n\n if (e.type === 'mouseup' || e.type === 'click') {\n if (options.onClick) {\n // Use e.native here for backwards compatibility\n options.onClick.call(me, e.native, me.active);\n }\n }\n\n // Remove styling for last active (even if it may still be active)\n if (me.lastActive.length) {\n me.updateHoverStyle(me.lastActive, hoverOptions.mode, false);\n }\n\n // Built in hover styling\n if (me.active.length && hoverOptions.mode) {\n me.updateHoverStyle(me.active, hoverOptions.mode, true);\n }\n\n changed = !helpers.arrayEquals(me.active, me.lastActive);\n\n // Remember Last Actives\n me.lastActive = me.active;\n\n return changed;\n }\n });\n\n /**\n * Provided for backward compatibility, use Chart instead.\n * @class Chart.Controller\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n * @private\n */\n Chart.Controller = Chart;\n};\n\n},{\"25\":25,\"28\":28,\"45\":45,\"48\":48}],24:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\n\nmodule.exports = function(Chart) {\n\n var arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];\n\n /**\n * Hooks the array methods that add or remove values ('push', pop', 'shift', 'splice',\n * 'unshift') and notify the listener AFTER the array has been altered. Listeners are\n * called on the 'onData*' callbacks (e.g. onDataPush, etc.) with same arguments.\n */\n function listenArrayEvents(array, listener) {\n if (array._chartjs) {\n array._chartjs.listeners.push(listener);\n return;\n }\n\n Object.defineProperty(array, '_chartjs', {\n configurable: true,\n enumerable: false,\n value: {\n listeners: [listener]\n }\n });\n\n arrayEvents.forEach(function(key) {\n var method = 'onData' + key.charAt(0).toUpperCase() + key.slice(1);\n var base = array[key];\n\n Object.defineProperty(array, key, {\n configurable: true,\n enumerable: false,\n value: function() {\n var args = Array.prototype.slice.call(arguments);\n var res = base.apply(this, args);\n\n helpers.each(array._chartjs.listeners, function(object) {\n if (typeof object[method] === 'function') {\n object[method].apply(object, args);\n }\n });\n\n return res;\n }\n });\n });\n }\n\n /**\n * Removes the given array event listener and cleanup extra attached properties (such as\n * the _chartjs stub and overridden methods) if array doesn't have any more listeners.\n */\n function unlistenArrayEvents(array, listener) {\n var stub = array._chartjs;\n if (!stub) {\n return;\n }\n\n var listeners = stub.listeners;\n var index = listeners.indexOf(listener);\n if (index !== -1) {\n listeners.splice(index, 1);\n }\n\n if (listeners.length > 0) {\n return;\n }\n\n arrayEvents.forEach(function(key) {\n delete array[key];\n });\n\n delete array._chartjs;\n }\n\n // Base class for all dataset controllers (line, bar, etc)\n Chart.DatasetController = function(chart, datasetIndex) {\n this.initialize(chart, datasetIndex);\n };\n\n helpers.extend(Chart.DatasetController.prototype, {\n\n /**\n * Element type used to generate a meta dataset (e.g. Chart.element.Line).\n * @type {Chart.core.element}\n */\n datasetElementType: null,\n\n /**\n * Element type used to generate a meta data (e.g. Chart.element.Point).\n * @type {Chart.core.element}\n */\n dataElementType: null,\n\n initialize: function(chart, datasetIndex) {\n var me = this;\n me.chart = chart;\n me.index = datasetIndex;\n me.linkScales();\n me.addElements();\n },\n\n updateIndex: function(datasetIndex) {\n this.index = datasetIndex;\n },\n\n linkScales: function() {\n var me = this;\n var meta = me.getMeta();\n var dataset = me.getDataset();\n\n if (meta.xAxisID === null) {\n meta.xAxisID = dataset.xAxisID || me.chart.options.scales.xAxes[0].id;\n }\n if (meta.yAxisID === null) {\n meta.yAxisID = dataset.yAxisID || me.chart.options.scales.yAxes[0].id;\n }\n },\n\n getDataset: function() {\n return this.chart.data.datasets[this.index];\n },\n\n getMeta: function() {\n return this.chart.getDatasetMeta(this.index);\n },\n\n getScaleForId: function(scaleID) {\n return this.chart.scales[scaleID];\n },\n\n reset: function() {\n this.update(true);\n },\n\n /**\n * @private\n */\n destroy: function() {\n if (this._data) {\n unlistenArrayEvents(this._data, this);\n }\n },\n\n createMetaDataset: function() {\n var me = this;\n var type = me.datasetElementType;\n return type && new type({\n _chart: me.chart,\n _datasetIndex: me.index\n });\n },\n\n createMetaData: function(index) {\n var me = this;\n var type = me.dataElementType;\n return type && new type({\n _chart: me.chart,\n _datasetIndex: me.index,\n _index: index\n });\n },\n\n addElements: function() {\n var me = this;\n var meta = me.getMeta();\n var data = me.getDataset().data || [];\n var metaData = meta.data;\n var i, ilen;\n\n for (i = 0, ilen = data.length; i < ilen; ++i) {\n metaData[i] = metaData[i] || me.createMetaData(i);\n }\n\n meta.dataset = meta.dataset || me.createMetaDataset();\n },\n\n addElementAndReset: function(index) {\n var element = this.createMetaData(index);\n this.getMeta().data.splice(index, 0, element);\n this.updateElement(element, index, true);\n },\n\n buildOrUpdateElements: function() {\n var me = this;\n var dataset = me.getDataset();\n var data = dataset.data || (dataset.data = []);\n\n // In order to correctly handle data addition/deletion animation (an thus simulate\n // real-time charts), we need to monitor these data modifications and synchronize\n // the internal meta data accordingly.\n if (me._data !== data) {\n if (me._data) {\n // This case happens when the user replaced the data array instance.\n unlistenArrayEvents(me._data, me);\n }\n\n listenArrayEvents(data, me);\n me._data = data;\n }\n\n // Re-sync meta data in case the user replaced the data array or if we missed\n // any updates and so make sure that we handle number of datapoints changing.\n me.resyncElements();\n },\n\n update: helpers.noop,\n\n transition: function(easingValue) {\n var meta = this.getMeta();\n var elements = meta.data || [];\n var ilen = elements.length;\n var i = 0;\n\n for (; i < ilen; ++i) {\n elements[i].transition(easingValue);\n }\n\n if (meta.dataset) {\n meta.dataset.transition(easingValue);\n }\n },\n\n draw: function() {\n var meta = this.getMeta();\n var elements = meta.data || [];\n var ilen = elements.length;\n var i = 0;\n\n if (meta.dataset) {\n meta.dataset.draw();\n }\n\n for (; i < ilen; ++i) {\n elements[i].draw();\n }\n },\n\n removeHoverStyle: function(element, elementOpts) {\n var dataset = this.chart.data.datasets[element._datasetIndex];\n var index = element._index;\n var custom = element.custom || {};\n var valueOrDefault = helpers.valueAtIndexOrDefault;\n var model = element._model;\n\n model.backgroundColor = custom.backgroundColor ? custom.backgroundColor : valueOrDefault(dataset.backgroundColor, index, elementOpts.backgroundColor);\n model.borderColor = custom.borderColor ? custom.borderColor : valueOrDefault(dataset.borderColor, index, elementOpts.borderColor);\n model.borderWidth = custom.borderWidth ? custom.borderWidth : valueOrDefault(dataset.borderWidth, index, elementOpts.borderWidth);\n },\n\n setHoverStyle: function(element) {\n var dataset = this.chart.data.datasets[element._datasetIndex];\n var index = element._index;\n var custom = element.custom || {};\n var valueOrDefault = helpers.valueAtIndexOrDefault;\n var getHoverColor = helpers.getHoverColor;\n var model = element._model;\n\n model.backgroundColor = custom.hoverBackgroundColor ? custom.hoverBackgroundColor : valueOrDefault(dataset.hoverBackgroundColor, index, getHoverColor(model.backgroundColor));\n model.borderColor = custom.hoverBorderColor ? custom.hoverBorderColor : valueOrDefault(dataset.hoverBorderColor, index, getHoverColor(model.borderColor));\n model.borderWidth = custom.hoverBorderWidth ? custom.hoverBorderWidth : valueOrDefault(dataset.hoverBorderWidth, index, model.borderWidth);\n },\n\n /**\n * @private\n */\n resyncElements: function() {\n var me = this;\n var meta = me.getMeta();\n var data = me.getDataset().data;\n var numMeta = meta.data.length;\n var numData = data.length;\n\n if (numData < numMeta) {\n meta.data.splice(numData, numMeta - numData);\n } else if (numData > numMeta) {\n me.insertElements(numMeta, numData - numMeta);\n }\n },\n\n /**\n * @private\n */\n insertElements: function(start, count) {\n for (var i = 0; i < count; ++i) {\n this.addElementAndReset(start + i);\n }\n },\n\n /**\n * @private\n */\n onDataPush: function() {\n this.insertElements(this.getDataset().data.length - 1, arguments.length);\n },\n\n /**\n * @private\n */\n onDataPop: function() {\n this.getMeta().data.pop();\n },\n\n /**\n * @private\n */\n onDataShift: function() {\n this.getMeta().data.shift();\n },\n\n /**\n * @private\n */\n onDataSplice: function(start, count) {\n this.getMeta().data.splice(start, count);\n this.insertElements(start, arguments.length - 2);\n },\n\n /**\n * @private\n */\n onDataUnshift: function() {\n this.insertElements(0, arguments.length);\n }\n });\n\n Chart.DatasetController.extend = helpers.inherits;\n};\n\n},{\"45\":45}],25:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\n\nmodule.exports = {\n /**\n * @private\n */\n _set: function(scope, values) {\n return helpers.merge(this[scope] || (this[scope] = {}), values);\n }\n};\n\n},{\"45\":45}],26:[function(require,module,exports){\n'use strict';\n\nvar color = require(2);\nvar helpers = require(45);\n\nfunction interpolate(start, view, model, ease) {\n var keys = Object.keys(model);\n var i, ilen, key, actual, origin, target, type, c0, c1;\n\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n key = keys[i];\n\n target = model[key];\n\n // if a value is added to the model after pivot() has been called, the view\n // doesn't contain it, so let's initialize the view to the target value.\n if (!view.hasOwnProperty(key)) {\n view[key] = target;\n }\n\n actual = view[key];\n\n if (actual === target || key[0] === '_') {\n continue;\n }\n\n if (!start.hasOwnProperty(key)) {\n start[key] = actual;\n }\n\n origin = start[key];\n\n type = typeof target;\n\n if (type === typeof origin) {\n if (type === 'string') {\n c0 = color(origin);\n if (c0.valid) {\n c1 = color(target);\n if (c1.valid) {\n view[key] = c1.mix(c0, ease).rgbString();\n continue;\n }\n }\n } else if (type === 'number' && isFinite(origin) && isFinite(target)) {\n view[key] = origin + (target - origin) * ease;\n continue;\n }\n }\n\n view[key] = target;\n }\n}\n\nvar Element = function(configuration) {\n helpers.extend(this, configuration);\n this.initialize.apply(this, arguments);\n};\n\nhelpers.extend(Element.prototype, {\n\n initialize: function() {\n this.hidden = false;\n },\n\n pivot: function() {\n var me = this;\n if (!me._view) {\n me._view = helpers.clone(me._model);\n }\n me._start = {};\n return me;\n },\n\n transition: function(ease) {\n var me = this;\n var model = me._model;\n var start = me._start;\n var view = me._view;\n\n // No animation -> No Transition\n if (!model || ease === 1) {\n me._view = model;\n me._start = null;\n return me;\n }\n\n if (!view) {\n view = me._view = {};\n }\n\n if (!start) {\n start = me._start = {};\n }\n\n interpolate(start, view, model, ease);\n\n return me;\n },\n\n tooltipPosition: function() {\n return {\n x: this._model.x,\n y: this._model.y\n };\n },\n\n hasValue: function() {\n return helpers.isNumber(this._model.x) && helpers.isNumber(this._model.y);\n }\n});\n\nElement.extend = helpers.inherits;\n\nmodule.exports = Element;\n\n},{\"2\":2,\"45\":45}],27:[function(require,module,exports){\n/* global window: false */\n/* global document: false */\n'use strict';\n\nvar color = require(2);\nvar defaults = require(25);\nvar helpers = require(45);\n\nmodule.exports = function(Chart) {\n\n // -- Basic js utility methods\n\n helpers.configMerge = function(/* objects ... */) {\n return helpers.merge(helpers.clone(arguments[0]), [].slice.call(arguments, 1), {\n merger: function(key, target, source, options) {\n var tval = target[key] || {};\n var sval = source[key];\n\n if (key === 'scales') {\n // scale config merging is complex. Add our own function here for that\n target[key] = helpers.scaleMerge(tval, sval);\n } else if (key === 'scale') {\n // used in polar area & radar charts since there is only one scale\n target[key] = helpers.merge(tval, [Chart.scaleService.getScaleDefaults(sval.type), sval]);\n } else {\n helpers._merger(key, target, source, options);\n }\n }\n });\n };\n\n helpers.scaleMerge = function(/* objects ... */) {\n return helpers.merge(helpers.clone(arguments[0]), [].slice.call(arguments, 1), {\n merger: function(key, target, source, options) {\n if (key === 'xAxes' || key === 'yAxes') {\n var slen = source[key].length;\n var i, type, scale;\n\n if (!target[key]) {\n target[key] = [];\n }\n\n for (i = 0; i < slen; ++i) {\n scale = source[key][i];\n type = helpers.valueOrDefault(scale.type, key === 'xAxes' ? 'category' : 'linear');\n\n if (i >= target[key].length) {\n target[key].push({});\n }\n\n if (!target[key][i].type || (scale.type && scale.type !== target[key][i].type)) {\n // new/untyped scale or type changed: let's apply the new defaults\n // then merge source scale to correctly overwrite the defaults.\n helpers.merge(target[key][i], [Chart.scaleService.getScaleDefaults(type), scale]);\n } else {\n // scales type are the same\n helpers.merge(target[key][i], scale);\n }\n }\n } else {\n helpers._merger(key, target, source, options);\n }\n }\n });\n };\n\n helpers.where = function(collection, filterCallback) {\n if (helpers.isArray(collection) && Array.prototype.filter) {\n return collection.filter(filterCallback);\n }\n var filtered = [];\n\n helpers.each(collection, function(item) {\n if (filterCallback(item)) {\n filtered.push(item);\n }\n });\n\n return filtered;\n };\n helpers.findIndex = Array.prototype.findIndex ?\n function(array, callback, scope) {\n return array.findIndex(callback, scope);\n } :\n function(array, callback, scope) {\n scope = scope === undefined ? array : scope;\n for (var i = 0, ilen = array.length; i < ilen; ++i) {\n if (callback.call(scope, array[i], i, array)) {\n return i;\n }\n }\n return -1;\n };\n helpers.findNextWhere = function(arrayToSearch, filterCallback, startIndex) {\n // Default to start of the array\n if (helpers.isNullOrUndef(startIndex)) {\n startIndex = -1;\n }\n for (var i = startIndex + 1; i < arrayToSearch.length; i++) {\n var currentItem = arrayToSearch[i];\n if (filterCallback(currentItem)) {\n return currentItem;\n }\n }\n };\n helpers.findPreviousWhere = function(arrayToSearch, filterCallback, startIndex) {\n // Default to end of the array\n if (helpers.isNullOrUndef(startIndex)) {\n startIndex = arrayToSearch.length;\n }\n for (var i = startIndex - 1; i >= 0; i--) {\n var currentItem = arrayToSearch[i];\n if (filterCallback(currentItem)) {\n return currentItem;\n }\n }\n };\n\n // -- Math methods\n helpers.isNumber = function(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n };\n helpers.almostEquals = function(x, y, epsilon) {\n return Math.abs(x - y) < epsilon;\n };\n helpers.almostWhole = function(x, epsilon) {\n var rounded = Math.round(x);\n return (((rounded - epsilon) < x) && ((rounded + epsilon) > x));\n };\n helpers.max = function(array) {\n return array.reduce(function(max, value) {\n if (!isNaN(value)) {\n return Math.max(max, value);\n }\n return max;\n }, Number.NEGATIVE_INFINITY);\n };\n helpers.min = function(array) {\n return array.reduce(function(min, value) {\n if (!isNaN(value)) {\n return Math.min(min, value);\n }\n return min;\n }, Number.POSITIVE_INFINITY);\n };\n helpers.sign = Math.sign ?\n function(x) {\n return Math.sign(x);\n } :\n function(x) {\n x = +x; // convert to a number\n if (x === 0 || isNaN(x)) {\n return x;\n }\n return x > 0 ? 1 : -1;\n };\n helpers.log10 = Math.log10 ?\n function(x) {\n return Math.log10(x);\n } :\n function(x) {\n return Math.log(x) / Math.LN10;\n };\n helpers.toRadians = function(degrees) {\n return degrees * (Math.PI / 180);\n };\n helpers.toDegrees = function(radians) {\n return radians * (180 / Math.PI);\n };\n // Gets the angle from vertical upright to the point about a centre.\n helpers.getAngleFromPoint = function(centrePoint, anglePoint) {\n var distanceFromXCenter = anglePoint.x - centrePoint.x;\n var distanceFromYCenter = anglePoint.y - centrePoint.y;\n var radialDistanceFromCenter = Math.sqrt(distanceFromXCenter * distanceFromXCenter + distanceFromYCenter * distanceFromYCenter);\n\n var angle = Math.atan2(distanceFromYCenter, distanceFromXCenter);\n\n if (angle < (-0.5 * Math.PI)) {\n angle += 2.0 * Math.PI; // make sure the returned angle is in the range of (-PI/2, 3PI/2]\n }\n\n return {\n angle: angle,\n distance: radialDistanceFromCenter\n };\n };\n helpers.distanceBetweenPoints = function(pt1, pt2) {\n return Math.sqrt(Math.pow(pt2.x - pt1.x, 2) + Math.pow(pt2.y - pt1.y, 2));\n };\n helpers.aliasPixel = function(pixelWidth) {\n return (pixelWidth % 2 === 0) ? 0 : 0.5;\n };\n helpers.splineCurve = function(firstPoint, middlePoint, afterPoint, t) {\n // Props to Rob Spencer at scaled innovation for his post on splining between points\n // http://scaledinnovation.com/analytics/splines/aboutSplines.html\n\n // This function must also respect \"skipped\" points\n\n var previous = firstPoint.skip ? middlePoint : firstPoint;\n var current = middlePoint;\n var next = afterPoint.skip ? middlePoint : afterPoint;\n\n var d01 = Math.sqrt(Math.pow(current.x - previous.x, 2) + Math.pow(current.y - previous.y, 2));\n var d12 = Math.sqrt(Math.pow(next.x - current.x, 2) + Math.pow(next.y - current.y, 2));\n\n var s01 = d01 / (d01 + d12);\n var s12 = d12 / (d01 + d12);\n\n // If all points are the same, s01 & s02 will be inf\n s01 = isNaN(s01) ? 0 : s01;\n s12 = isNaN(s12) ? 0 : s12;\n\n var fa = t * s01; // scaling factor for triangle Ta\n var fb = t * s12;\n\n return {\n previous: {\n x: current.x - fa * (next.x - previous.x),\n y: current.y - fa * (next.y - previous.y)\n },\n next: {\n x: current.x + fb * (next.x - previous.x),\n y: current.y + fb * (next.y - previous.y)\n }\n };\n };\n helpers.EPSILON = Number.EPSILON || 1e-14;\n helpers.splineCurveMonotone = function(points) {\n // This function calculates Bézier control points in a similar way than |splineCurve|,\n // but preserves monotonicity of the provided data and ensures no local extremums are added\n // between the dataset discrete points due to the interpolation.\n // See : https://en.wikipedia.org/wiki/Monotone_cubic_interpolation\n\n var pointsWithTangents = (points || []).map(function(point) {\n return {\n model: point._model,\n deltaK: 0,\n mK: 0\n };\n });\n\n // Calculate slopes (deltaK) and initialize tangents (mK)\n var pointsLen = pointsWithTangents.length;\n var i, pointBefore, pointCurrent, pointAfter;\n for (i = 0; i < pointsLen; ++i) {\n pointCurrent = pointsWithTangents[i];\n if (pointCurrent.model.skip) {\n continue;\n }\n\n pointBefore = i > 0 ? pointsWithTangents[i - 1] : null;\n pointAfter = i < pointsLen - 1 ? pointsWithTangents[i + 1] : null;\n if (pointAfter && !pointAfter.model.skip) {\n var slopeDeltaX = (pointAfter.model.x - pointCurrent.model.x);\n\n // In the case of two points that appear at the same x pixel, slopeDeltaX is 0\n pointCurrent.deltaK = slopeDeltaX !== 0 ? (pointAfter.model.y - pointCurrent.model.y) / slopeDeltaX : 0;\n }\n\n if (!pointBefore || pointBefore.model.skip) {\n pointCurrent.mK = pointCurrent.deltaK;\n } else if (!pointAfter || pointAfter.model.skip) {\n pointCurrent.mK = pointBefore.deltaK;\n } else if (this.sign(pointBefore.deltaK) !== this.sign(pointCurrent.deltaK)) {\n pointCurrent.mK = 0;\n } else {\n pointCurrent.mK = (pointBefore.deltaK + pointCurrent.deltaK) / 2;\n }\n }\n\n // Adjust tangents to ensure monotonic properties\n var alphaK, betaK, tauK, squaredMagnitude;\n for (i = 0; i < pointsLen - 1; ++i) {\n pointCurrent = pointsWithTangents[i];\n pointAfter = pointsWithTangents[i + 1];\n if (pointCurrent.model.skip || pointAfter.model.skip) {\n continue;\n }\n\n if (helpers.almostEquals(pointCurrent.deltaK, 0, this.EPSILON)) {\n pointCurrent.mK = pointAfter.mK = 0;\n continue;\n }\n\n alphaK = pointCurrent.mK / pointCurrent.deltaK;\n betaK = pointAfter.mK / pointCurrent.deltaK;\n squaredMagnitude = Math.pow(alphaK, 2) + Math.pow(betaK, 2);\n if (squaredMagnitude <= 9) {\n continue;\n }\n\n tauK = 3 / Math.sqrt(squaredMagnitude);\n pointCurrent.mK = alphaK * tauK * pointCurrent.deltaK;\n pointAfter.mK = betaK * tauK * pointCurrent.deltaK;\n }\n\n // Compute control points\n var deltaX;\n for (i = 0; i < pointsLen; ++i) {\n pointCurrent = pointsWithTangents[i];\n if (pointCurrent.model.skip) {\n continue;\n }\n\n pointBefore = i > 0 ? pointsWithTangents[i - 1] : null;\n pointAfter = i < pointsLen - 1 ? pointsWithTangents[i + 1] : null;\n if (pointBefore && !pointBefore.model.skip) {\n deltaX = (pointCurrent.model.x - pointBefore.model.x) / 3;\n pointCurrent.model.controlPointPreviousX = pointCurrent.model.x - deltaX;\n pointCurrent.model.controlPointPreviousY = pointCurrent.model.y - deltaX * pointCurrent.mK;\n }\n if (pointAfter && !pointAfter.model.skip) {\n deltaX = (pointAfter.model.x - pointCurrent.model.x) / 3;\n pointCurrent.model.controlPointNextX = pointCurrent.model.x + deltaX;\n pointCurrent.model.controlPointNextY = pointCurrent.model.y + deltaX * pointCurrent.mK;\n }\n }\n };\n helpers.nextItem = function(collection, index, loop) {\n if (loop) {\n return index >= collection.length - 1 ? collection[0] : collection[index + 1];\n }\n return index >= collection.length - 1 ? collection[collection.length - 1] : collection[index + 1];\n };\n helpers.previousItem = function(collection, index, loop) {\n if (loop) {\n return index <= 0 ? collection[collection.length - 1] : collection[index - 1];\n }\n return index <= 0 ? collection[0] : collection[index - 1];\n };\n // Implementation of the nice number algorithm used in determining where axis labels will go\n helpers.niceNum = function(range, round) {\n var exponent = Math.floor(helpers.log10(range));\n var fraction = range / Math.pow(10, exponent);\n var niceFraction;\n\n if (round) {\n if (fraction < 1.5) {\n niceFraction = 1;\n } else if (fraction < 3) {\n niceFraction = 2;\n } else if (fraction < 7) {\n niceFraction = 5;\n } else {\n niceFraction = 10;\n }\n } else if (fraction <= 1.0) {\n niceFraction = 1;\n } else if (fraction <= 2) {\n niceFraction = 2;\n } else if (fraction <= 5) {\n niceFraction = 5;\n } else {\n niceFraction = 10;\n }\n\n return niceFraction * Math.pow(10, exponent);\n };\n // Request animation polyfill - http://www.paulirish.com/2011/requestanimationframe-for-smart-animating/\n helpers.requestAnimFrame = (function() {\n if (typeof window === 'undefined') {\n return function(callback) {\n callback();\n };\n }\n return window.requestAnimationFrame ||\n window.webkitRequestAnimationFrame ||\n window.mozRequestAnimationFrame ||\n window.oRequestAnimationFrame ||\n window.msRequestAnimationFrame ||\n function(callback) {\n return window.setTimeout(callback, 1000 / 60);\n };\n }());\n // -- DOM methods\n helpers.getRelativePosition = function(evt, chart) {\n var mouseX, mouseY;\n var e = evt.originalEvent || evt;\n var canvas = evt.currentTarget || evt.srcElement;\n var boundingRect = canvas.getBoundingClientRect();\n\n var touches = e.touches;\n if (touches && touches.length > 0) {\n mouseX = touches[0].clientX;\n mouseY = touches[0].clientY;\n\n } else {\n mouseX = e.clientX;\n mouseY = e.clientY;\n }\n\n // Scale mouse coordinates into canvas coordinates\n // by following the pattern laid out by 'jerryj' in the comments of\n // http://www.html5canvastutorials.com/advanced/html5-canvas-mouse-coordinates/\n var paddingLeft = parseFloat(helpers.getStyle(canvas, 'padding-left'));\n var paddingTop = parseFloat(helpers.getStyle(canvas, 'padding-top'));\n var paddingRight = parseFloat(helpers.getStyle(canvas, 'padding-right'));\n var paddingBottom = parseFloat(helpers.getStyle(canvas, 'padding-bottom'));\n var width = boundingRect.right - boundingRect.left - paddingLeft - paddingRight;\n var height = boundingRect.bottom - boundingRect.top - paddingTop - paddingBottom;\n\n // We divide by the current device pixel ratio, because the canvas is scaled up by that amount in each direction. However\n // the backend model is in unscaled coordinates. Since we are going to deal with our model coordinates, we go back here\n mouseX = Math.round((mouseX - boundingRect.left - paddingLeft) / (width) * canvas.width / chart.currentDevicePixelRatio);\n mouseY = Math.round((mouseY - boundingRect.top - paddingTop) / (height) * canvas.height / chart.currentDevicePixelRatio);\n\n return {\n x: mouseX,\n y: mouseY\n };\n\n };\n\n // Private helper function to convert max-width/max-height values that may be percentages into a number\n function parseMaxStyle(styleValue, node, parentProperty) {\n var valueInPixels;\n if (typeof styleValue === 'string') {\n valueInPixels = parseInt(styleValue, 10);\n\n if (styleValue.indexOf('%') !== -1) {\n // percentage * size in dimension\n valueInPixels = valueInPixels / 100 * node.parentNode[parentProperty];\n }\n } else {\n valueInPixels = styleValue;\n }\n\n return valueInPixels;\n }\n\n /**\n * Returns if the given value contains an effective constraint.\n * @private\n */\n function isConstrainedValue(value) {\n return value !== undefined && value !== null && value !== 'none';\n }\n\n // Private helper to get a constraint dimension\n // @param domNode : the node to check the constraint on\n // @param maxStyle : the style that defines the maximum for the direction we are using (maxWidth / maxHeight)\n // @param percentageProperty : property of parent to use when calculating width as a percentage\n // @see http://www.nathanaeljones.com/blog/2013/reading-max-width-cross-browser\n function getConstraintDimension(domNode, maxStyle, percentageProperty) {\n var view = document.defaultView;\n var parentNode = domNode.parentNode;\n var constrainedNode = view.getComputedStyle(domNode)[maxStyle];\n var constrainedContainer = view.getComputedStyle(parentNode)[maxStyle];\n var hasCNode = isConstrainedValue(constrainedNode);\n var hasCContainer = isConstrainedValue(constrainedContainer);\n var infinity = Number.POSITIVE_INFINITY;\n\n if (hasCNode || hasCContainer) {\n return Math.min(\n hasCNode ? parseMaxStyle(constrainedNode, domNode, percentageProperty) : infinity,\n hasCContainer ? parseMaxStyle(constrainedContainer, parentNode, percentageProperty) : infinity);\n }\n\n return 'none';\n }\n // returns Number or undefined if no constraint\n helpers.getConstraintWidth = function(domNode) {\n return getConstraintDimension(domNode, 'max-width', 'clientWidth');\n };\n // returns Number or undefined if no constraint\n helpers.getConstraintHeight = function(domNode) {\n return getConstraintDimension(domNode, 'max-height', 'clientHeight');\n };\n helpers.getMaximumWidth = function(domNode) {\n var container = domNode.parentNode;\n if (!container) {\n return domNode.clientWidth;\n }\n\n var paddingLeft = parseInt(helpers.getStyle(container, 'padding-left'), 10);\n var paddingRight = parseInt(helpers.getStyle(container, 'padding-right'), 10);\n var w = container.clientWidth - paddingLeft - paddingRight;\n var cw = helpers.getConstraintWidth(domNode);\n return isNaN(cw) ? w : Math.min(w, cw);\n };\n helpers.getMaximumHeight = function(domNode) {\n var container = domNode.parentNode;\n if (!container) {\n return domNode.clientHeight;\n }\n\n var paddingTop = parseInt(helpers.getStyle(container, 'padding-top'), 10);\n var paddingBottom = parseInt(helpers.getStyle(container, 'padding-bottom'), 10);\n var h = container.clientHeight - paddingTop - paddingBottom;\n var ch = helpers.getConstraintHeight(domNode);\n return isNaN(ch) ? h : Math.min(h, ch);\n };\n helpers.getStyle = function(el, property) {\n return el.currentStyle ?\n el.currentStyle[property] :\n document.defaultView.getComputedStyle(el, null).getPropertyValue(property);\n };\n helpers.retinaScale = function(chart, forceRatio) {\n var pixelRatio = chart.currentDevicePixelRatio = forceRatio || window.devicePixelRatio || 1;\n if (pixelRatio === 1) {\n return;\n }\n\n var canvas = chart.canvas;\n var height = chart.height;\n var width = chart.width;\n\n canvas.height = height * pixelRatio;\n canvas.width = width * pixelRatio;\n chart.ctx.scale(pixelRatio, pixelRatio);\n\n // If no style has been set on the canvas, the render size is used as display size,\n // making the chart visually bigger, so let's enforce it to the \"correct\" values.\n // See https://github.com/chartjs/Chart.js/issues/3575\n canvas.style.height = height + 'px';\n canvas.style.width = width + 'px';\n };\n // -- Canvas methods\n helpers.fontString = function(pixelSize, fontStyle, fontFamily) {\n return fontStyle + ' ' + pixelSize + 'px ' + fontFamily;\n };\n helpers.longestText = function(ctx, font, arrayOfThings, cache) {\n cache = cache || {};\n var data = cache.data = cache.data || {};\n var gc = cache.garbageCollect = cache.garbageCollect || [];\n\n if (cache.font !== font) {\n data = cache.data = {};\n gc = cache.garbageCollect = [];\n cache.font = font;\n }\n\n ctx.font = font;\n var longest = 0;\n helpers.each(arrayOfThings, function(thing) {\n // Undefined strings and arrays should not be measured\n if (thing !== undefined && thing !== null && helpers.isArray(thing) !== true) {\n longest = helpers.measureText(ctx, data, gc, longest, thing);\n } else if (helpers.isArray(thing)) {\n // if it is an array lets measure each element\n // to do maybe simplify this function a bit so we can do this more recursively?\n helpers.each(thing, function(nestedThing) {\n // Undefined strings and arrays should not be measured\n if (nestedThing !== undefined && nestedThing !== null && !helpers.isArray(nestedThing)) {\n longest = helpers.measureText(ctx, data, gc, longest, nestedThing);\n }\n });\n }\n });\n\n var gcLen = gc.length / 2;\n if (gcLen > arrayOfThings.length) {\n for (var i = 0; i < gcLen; i++) {\n delete data[gc[i]];\n }\n gc.splice(0, gcLen);\n }\n return longest;\n };\n helpers.measureText = function(ctx, data, gc, longest, string) {\n var textWidth = data[string];\n if (!textWidth) {\n textWidth = data[string] = ctx.measureText(string).width;\n gc.push(string);\n }\n if (textWidth > longest) {\n longest = textWidth;\n }\n return longest;\n };\n helpers.numberOfLabelLines = function(arrayOfThings) {\n var numberOfLines = 1;\n helpers.each(arrayOfThings, function(thing) {\n if (helpers.isArray(thing)) {\n if (thing.length > numberOfLines) {\n numberOfLines = thing.length;\n }\n }\n });\n return numberOfLines;\n };\n\n helpers.color = !color ?\n function(value) {\n console.error('Color.js not found!');\n return value;\n } :\n function(value) {\n /* global CanvasGradient */\n if (value instanceof CanvasGradient) {\n value = defaults.global.defaultColor;\n }\n\n return color(value);\n };\n\n helpers.getHoverColor = function(colorValue) {\n /* global CanvasPattern */\n return (colorValue instanceof CanvasPattern) ?\n colorValue :\n helpers.color(colorValue).saturate(0.5).darken(0.1).rgbString();\n };\n};\n\n},{\"2\":2,\"25\":25,\"45\":45}],28:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\n\n/**\n * Helper function to get relative position for an event\n * @param {Event|IEvent} event - The event to get the position for\n * @param {Chart} chart - The chart\n * @returns {Point} the event position\n */\nfunction getRelativePosition(e, chart) {\n if (e.native) {\n return {\n x: e.x,\n y: e.y\n };\n }\n\n return helpers.getRelativePosition(e, chart);\n}\n\n/**\n * Helper function to traverse all of the visible elements in the chart\n * @param chart {chart} the chart\n * @param handler {Function} the callback to execute for each visible item\n */\nfunction parseVisibleItems(chart, handler) {\n var datasets = chart.data.datasets;\n var meta, i, j, ilen, jlen;\n\n for (i = 0, ilen = datasets.length; i < ilen; ++i) {\n if (!chart.isDatasetVisible(i)) {\n continue;\n }\n\n meta = chart.getDatasetMeta(i);\n for (j = 0, jlen = meta.data.length; j < jlen; ++j) {\n var element = meta.data[j];\n if (!element._view.skip) {\n handler(element);\n }\n }\n }\n}\n\n/**\n * Helper function to get the items that intersect the event position\n * @param items {ChartElement[]} elements to filter\n * @param position {Point} the point to be nearest to\n * @return {ChartElement[]} the nearest items\n */\nfunction getIntersectItems(chart, position) {\n var elements = [];\n\n parseVisibleItems(chart, function(element) {\n if (element.inRange(position.x, position.y)) {\n elements.push(element);\n }\n });\n\n return elements;\n}\n\n/**\n * Helper function to get the items nearest to the event position considering all visible items in teh chart\n * @param chart {Chart} the chart to look at elements from\n * @param position {Point} the point to be nearest to\n * @param intersect {Boolean} if true, only consider items that intersect the position\n * @param distanceMetric {Function} function to provide the distance between points\n * @return {ChartElement[]} the nearest items\n */\nfunction getNearestItems(chart, position, intersect, distanceMetric) {\n var minDistance = Number.POSITIVE_INFINITY;\n var nearestItems = [];\n\n parseVisibleItems(chart, function(element) {\n if (intersect && !element.inRange(position.x, position.y)) {\n return;\n }\n\n var center = element.getCenterPoint();\n var distance = distanceMetric(position, center);\n\n if (distance < minDistance) {\n nearestItems = [element];\n minDistance = distance;\n } else if (distance === minDistance) {\n // Can have multiple items at the same distance in which case we sort by size\n nearestItems.push(element);\n }\n });\n\n return nearestItems;\n}\n\n/**\n * Get a distance metric function for two points based on the\n * axis mode setting\n * @param {String} axis the axis mode. x|y|xy\n */\nfunction getDistanceMetricForAxis(axis) {\n var useX = axis.indexOf('x') !== -1;\n var useY = axis.indexOf('y') !== -1;\n\n return function(pt1, pt2) {\n var deltaX = useX ? Math.abs(pt1.x - pt2.x) : 0;\n var deltaY = useY ? Math.abs(pt1.y - pt2.y) : 0;\n return Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2));\n };\n}\n\nfunction indexMode(chart, e, options) {\n var position = getRelativePosition(e, chart);\n // Default axis for index mode is 'x' to match old behaviour\n options.axis = options.axis || 'x';\n var distanceMetric = getDistanceMetricForAxis(options.axis);\n var items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric);\n var elements = [];\n\n if (!items.length) {\n return [];\n }\n\n chart.data.datasets.forEach(function(dataset, datasetIndex) {\n if (chart.isDatasetVisible(datasetIndex)) {\n var meta = chart.getDatasetMeta(datasetIndex);\n var element = meta.data[items[0]._index];\n\n // don't count items that are skipped (null data)\n if (element && !element._view.skip) {\n elements.push(element);\n }\n }\n });\n\n return elements;\n}\n\n/**\n * @interface IInteractionOptions\n */\n/**\n * If true, only consider items that intersect the point\n * @name IInterfaceOptions#boolean\n * @type Boolean\n */\n\n/**\n * Contains interaction related functions\n * @namespace Chart.Interaction\n */\nmodule.exports = {\n // Helper function for different modes\n modes: {\n single: function(chart, e) {\n var position = getRelativePosition(e, chart);\n var elements = [];\n\n parseVisibleItems(chart, function(element) {\n if (element.inRange(position.x, position.y)) {\n elements.push(element);\n return elements;\n }\n });\n\n return elements.slice(0, 1);\n },\n\n /**\n * @function Chart.Interaction.modes.label\n * @deprecated since version 2.4.0\n * @todo remove at version 3\n * @private\n */\n label: indexMode,\n\n /**\n * Returns items at the same index. If the options.intersect parameter is true, we only return items if we intersect something\n * If the options.intersect mode is false, we find the nearest item and return the items at the same index as that item\n * @function Chart.Interaction.modes.index\n * @since v2.4.0\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @param options {IInteractionOptions} options to use during interaction\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n index: indexMode,\n\n /**\n * Returns items in the same dataset. If the options.intersect parameter is true, we only return items if we intersect something\n * If the options.intersect is false, we find the nearest item and return the items in that dataset\n * @function Chart.Interaction.modes.dataset\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @param options {IInteractionOptions} options to use during interaction\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n dataset: function(chart, e, options) {\n var position = getRelativePosition(e, chart);\n options.axis = options.axis || 'xy';\n var distanceMetric = getDistanceMetricForAxis(options.axis);\n var items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric);\n\n if (items.length > 0) {\n items = chart.getDatasetMeta(items[0]._datasetIndex).data;\n }\n\n return items;\n },\n\n /**\n * @function Chart.Interaction.modes.x-axis\n * @deprecated since version 2.4.0. Use index mode and intersect == true\n * @todo remove at version 3\n * @private\n */\n 'x-axis': function(chart, e) {\n return indexMode(chart, e, {intersect: false});\n },\n\n /**\n * Point mode returns all elements that hit test based on the event position\n * of the event\n * @function Chart.Interaction.modes.intersect\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n point: function(chart, e) {\n var position = getRelativePosition(e, chart);\n return getIntersectItems(chart, position);\n },\n\n /**\n * nearest mode returns the element closest to the point\n * @function Chart.Interaction.modes.intersect\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @param options {IInteractionOptions} options to use\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n nearest: function(chart, e, options) {\n var position = getRelativePosition(e, chart);\n options.axis = options.axis || 'xy';\n var distanceMetric = getDistanceMetricForAxis(options.axis);\n var nearestItems = getNearestItems(chart, position, options.intersect, distanceMetric);\n\n // We have multiple items at the same distance from the event. Now sort by smallest\n if (nearestItems.length > 1) {\n nearestItems.sort(function(a, b) {\n var sizeA = a.getArea();\n var sizeB = b.getArea();\n var ret = sizeA - sizeB;\n\n if (ret === 0) {\n // if equal sort by dataset index\n ret = a._datasetIndex - b._datasetIndex;\n }\n\n return ret;\n });\n }\n\n // Return only 1 item\n return nearestItems.slice(0, 1);\n },\n\n /**\n * x mode returns the elements that hit-test at the current x coordinate\n * @function Chart.Interaction.modes.x\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @param options {IInteractionOptions} options to use\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n x: function(chart, e, options) {\n var position = getRelativePosition(e, chart);\n var items = [];\n var intersectsItem = false;\n\n parseVisibleItems(chart, function(element) {\n if (element.inXRange(position.x)) {\n items.push(element);\n }\n\n if (element.inRange(position.x, position.y)) {\n intersectsItem = true;\n }\n });\n\n // If we want to trigger on an intersect and we don't have any items\n // that intersect the position, return nothing\n if (options.intersect && !intersectsItem) {\n items = [];\n }\n return items;\n },\n\n /**\n * y mode returns the elements that hit-test at the current y coordinate\n * @function Chart.Interaction.modes.y\n * @param chart {chart} the chart we are returning items from\n * @param e {Event} the event we are find things at\n * @param options {IInteractionOptions} options to use\n * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned\n */\n y: function(chart, e, options) {\n var position = getRelativePosition(e, chart);\n var items = [];\n var intersectsItem = false;\n\n parseVisibleItems(chart, function(element) {\n if (element.inYRange(position.y)) {\n items.push(element);\n }\n\n if (element.inRange(position.x, position.y)) {\n intersectsItem = true;\n }\n });\n\n // If we want to trigger on an intersect and we don't have any items\n // that intersect the position, return nothing\n if (options.intersect && !intersectsItem) {\n items = [];\n }\n return items;\n }\n }\n};\n\n},{\"45\":45}],29:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\n\ndefaults._set('global', {\n responsive: true,\n responsiveAnimationDuration: 0,\n maintainAspectRatio: true,\n events: ['mousemove', 'mouseout', 'click', 'touchstart', 'touchmove'],\n hover: {\n onHover: null,\n mode: 'nearest',\n intersect: true,\n animationDuration: 400\n },\n onClick: null,\n defaultColor: 'rgba(0,0,0,0.1)',\n defaultFontColor: '#666',\n defaultFontFamily: \"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",\n defaultFontSize: 12,\n defaultFontStyle: 'normal',\n showLines: true,\n\n // Element defaults defined in element extensions\n elements: {},\n\n // Layout options such as padding\n layout: {\n padding: {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n }\n }\n});\n\nmodule.exports = function() {\n\n // Occupy the global variable of Chart, and create a simple base class\n var Chart = function(item, config) {\n this.construct(item, config);\n return this;\n };\n\n Chart.Chart = Chart;\n\n return Chart;\n};\n\n},{\"25\":25}],30:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\n\nmodule.exports = function(Chart) {\n\n function filterByPosition(array, position) {\n return helpers.where(array, function(v) {\n return v.position === position;\n });\n }\n\n function sortByWeight(array, reverse) {\n array.forEach(function(v, i) {\n v._tmpIndex_ = i;\n return v;\n });\n array.sort(function(a, b) {\n var v0 = reverse ? b : a;\n var v1 = reverse ? a : b;\n return v0.weight === v1.weight ?\n v0._tmpIndex_ - v1._tmpIndex_ :\n v0.weight - v1.weight;\n });\n array.forEach(function(v) {\n delete v._tmpIndex_;\n });\n }\n\n /**\n * @interface ILayoutItem\n * @prop {String} position - The position of the item in the chart layout. Possible values are\n * 'left', 'top', 'right', 'bottom', and 'chartArea'\n * @prop {Number} weight - The weight used to sort the item. Higher weights are further away from the chart area\n * @prop {Boolean} fullWidth - if true, and the item is horizontal, then push vertical boxes down\n * @prop {Function} isHorizontal - returns true if the layout item is horizontal (ie. top or bottom)\n * @prop {Function} update - Takes two parameters: width and height. Returns size of item\n * @prop {Function} getPadding - Returns an object with padding on the edges\n * @prop {Number} width - Width of item. Must be valid after update()\n * @prop {Number} height - Height of item. Must be valid after update()\n * @prop {Number} left - Left edge of the item. Set by layout system and cannot be used in update\n * @prop {Number} top - Top edge of the item. Set by layout system and cannot be used in update\n * @prop {Number} right - Right edge of the item. Set by layout system and cannot be used in update\n * @prop {Number} bottom - Bottom edge of the item. Set by layout system and cannot be used in update\n */\n\n // The layout service is very self explanatory. It's responsible for the layout within a chart.\n // Scales, Legends and Plugins all rely on the layout service and can easily register to be placed anywhere they need\n // It is this service's responsibility of carrying out that layout.\n Chart.layoutService = {\n defaults: {},\n\n /**\n * Register a box to a chart.\n * A box is simply a reference to an object that requires layout. eg. Scales, Legend, Title.\n * @param {Chart} chart - the chart to use\n * @param {ILayoutItem} item - the item to add to be layed out\n */\n addBox: function(chart, item) {\n if (!chart.boxes) {\n chart.boxes = [];\n }\n\n // initialize item with default values\n item.fullWidth = item.fullWidth || false;\n item.position = item.position || 'top';\n item.weight = item.weight || 0;\n\n chart.boxes.push(item);\n },\n\n /**\n * Remove a layoutItem from a chart\n * @param {Chart} chart - the chart to remove the box from\n * @param {Object} layoutItem - the item to remove from the layout\n */\n removeBox: function(chart, layoutItem) {\n var index = chart.boxes ? chart.boxes.indexOf(layoutItem) : -1;\n if (index !== -1) {\n chart.boxes.splice(index, 1);\n }\n },\n\n /**\n * Sets (or updates) options on the given `item`.\n * @param {Chart} chart - the chart in which the item lives (or will be added to)\n * @param {Object} item - the item to configure with the given options\n * @param {Object} options - the new item options.\n */\n configure: function(chart, item, options) {\n var props = ['fullWidth', 'position', 'weight'];\n var ilen = props.length;\n var i = 0;\n var prop;\n\n for (; i < ilen; ++i) {\n prop = props[i];\n if (options.hasOwnProperty(prop)) {\n item[prop] = options[prop];\n }\n }\n },\n\n /**\n * Fits boxes of the given chart into the given size by having each box measure itself\n * then running a fitting algorithm\n * @param {Chart} chart - the chart\n * @param {Number} width - the width to fit into\n * @param {Number} height - the height to fit into\n */\n update: function(chart, width, height) {\n if (!chart) {\n return;\n }\n\n var layoutOptions = chart.options.layout || {};\n var padding = helpers.options.toPadding(layoutOptions.padding);\n var leftPadding = padding.left;\n var rightPadding = padding.right;\n var topPadding = padding.top;\n var bottomPadding = padding.bottom;\n\n var leftBoxes = filterByPosition(chart.boxes, 'left');\n var rightBoxes = filterByPosition(chart.boxes, 'right');\n var topBoxes = filterByPosition(chart.boxes, 'top');\n var bottomBoxes = filterByPosition(chart.boxes, 'bottom');\n var chartAreaBoxes = filterByPosition(chart.boxes, 'chartArea');\n\n // Sort boxes by weight. A higher weight is further away from the chart area\n sortByWeight(leftBoxes, true);\n sortByWeight(rightBoxes, false);\n sortByWeight(topBoxes, true);\n sortByWeight(bottomBoxes, false);\n\n // Essentially we now have any number of boxes on each of the 4 sides.\n // Our canvas looks like the following.\n // The areas L1 and L2 are the left axes. R1 is the right axis, T1 is the top axis and\n // B1 is the bottom axis\n // There are also 4 quadrant-like locations (left to right instead of clockwise) reserved for chart overlays\n // These locations are single-box locations only, when trying to register a chartArea location that is already taken,\n // an error will be thrown.\n //\n // |----------------------------------------------------|\n // | T1 (Full Width) |\n // |----------------------------------------------------|\n // | | | T2 | |\n // | |----|-------------------------------------|----|\n // | | | C1 | | C2 | |\n // | | |----| |----| |\n // | | | | |\n // | L1 | L2 | ChartArea (C0) | R1 |\n // | | | | |\n // | | |----| |----| |\n // | | | C3 | | C4 | |\n // | |----|-------------------------------------|----|\n // | | | B1 | |\n // |----------------------------------------------------|\n // | B2 (Full Width) |\n // |----------------------------------------------------|\n //\n // What we do to find the best sizing, we do the following\n // 1. Determine the minimum size of the chart area.\n // 2. Split the remaining width equally between each vertical axis\n // 3. Split the remaining height equally between each horizontal axis\n // 4. Give each layout the maximum size it can be. The layout will return it's minimum size\n // 5. Adjust the sizes of each axis based on it's minimum reported size.\n // 6. Refit each axis\n // 7. Position each axis in the final location\n // 8. Tell the chart the final location of the chart area\n // 9. Tell any axes that overlay the chart area the positions of the chart area\n\n // Step 1\n var chartWidth = width - leftPadding - rightPadding;\n var chartHeight = height - topPadding - bottomPadding;\n var chartAreaWidth = chartWidth / 2; // min 50%\n var chartAreaHeight = chartHeight / 2; // min 50%\n\n // Step 2\n var verticalBoxWidth = (width - chartAreaWidth) / (leftBoxes.length + rightBoxes.length);\n\n // Step 3\n var horizontalBoxHeight = (height - chartAreaHeight) / (topBoxes.length + bottomBoxes.length);\n\n // Step 4\n var maxChartAreaWidth = chartWidth;\n var maxChartAreaHeight = chartHeight;\n var minBoxSizes = [];\n\n function getMinimumBoxSize(box) {\n var minSize;\n var isHorizontal = box.isHorizontal();\n\n if (isHorizontal) {\n minSize = box.update(box.fullWidth ? chartWidth : maxChartAreaWidth, horizontalBoxHeight);\n maxChartAreaHeight -= minSize.height;\n } else {\n minSize = box.update(verticalBoxWidth, chartAreaHeight);\n maxChartAreaWidth -= minSize.width;\n }\n\n minBoxSizes.push({\n horizontal: isHorizontal,\n minSize: minSize,\n box: box,\n });\n }\n\n helpers.each(leftBoxes.concat(rightBoxes, topBoxes, bottomBoxes), getMinimumBoxSize);\n\n // If a horizontal box has padding, we move the left boxes over to avoid ugly charts (see issue #2478)\n var maxHorizontalLeftPadding = 0;\n var maxHorizontalRightPadding = 0;\n var maxVerticalTopPadding = 0;\n var maxVerticalBottomPadding = 0;\n\n helpers.each(topBoxes.concat(bottomBoxes), function(horizontalBox) {\n if (horizontalBox.getPadding) {\n var boxPadding = horizontalBox.getPadding();\n maxHorizontalLeftPadding = Math.max(maxHorizontalLeftPadding, boxPadding.left);\n maxHorizontalRightPadding = Math.max(maxHorizontalRightPadding, boxPadding.right);\n }\n });\n\n helpers.each(leftBoxes.concat(rightBoxes), function(verticalBox) {\n if (verticalBox.getPadding) {\n var boxPadding = verticalBox.getPadding();\n maxVerticalTopPadding = Math.max(maxVerticalTopPadding, boxPadding.top);\n maxVerticalBottomPadding = Math.max(maxVerticalBottomPadding, boxPadding.bottom);\n }\n });\n\n // At this point, maxChartAreaHeight and maxChartAreaWidth are the size the chart area could\n // be if the axes are drawn at their minimum sizes.\n // Steps 5 & 6\n var totalLeftBoxesWidth = leftPadding;\n var totalRightBoxesWidth = rightPadding;\n var totalTopBoxesHeight = topPadding;\n var totalBottomBoxesHeight = bottomPadding;\n\n // Function to fit a box\n function fitBox(box) {\n var minBoxSize = helpers.findNextWhere(minBoxSizes, function(minBox) {\n return minBox.box === box;\n });\n\n if (minBoxSize) {\n if (box.isHorizontal()) {\n var scaleMargin = {\n left: Math.max(totalLeftBoxesWidth, maxHorizontalLeftPadding),\n right: Math.max(totalRightBoxesWidth, maxHorizontalRightPadding),\n top: 0,\n bottom: 0\n };\n\n // Don't use min size here because of label rotation. When the labels are rotated, their rotation highly depends\n // on the margin. Sometimes they need to increase in size slightly\n box.update(box.fullWidth ? chartWidth : maxChartAreaWidth, chartHeight / 2, scaleMargin);\n } else {\n box.update(minBoxSize.minSize.width, maxChartAreaHeight);\n }\n }\n }\n\n // Update, and calculate the left and right margins for the horizontal boxes\n helpers.each(leftBoxes.concat(rightBoxes), fitBox);\n\n helpers.each(leftBoxes, function(box) {\n totalLeftBoxesWidth += box.width;\n });\n\n helpers.each(rightBoxes, function(box) {\n totalRightBoxesWidth += box.width;\n });\n\n // Set the Left and Right margins for the horizontal boxes\n helpers.each(topBoxes.concat(bottomBoxes), fitBox);\n\n // Figure out how much margin is on the top and bottom of the vertical boxes\n helpers.each(topBoxes, function(box) {\n totalTopBoxesHeight += box.height;\n });\n\n helpers.each(bottomBoxes, function(box) {\n totalBottomBoxesHeight += box.height;\n });\n\n function finalFitVerticalBox(box) {\n var minBoxSize = helpers.findNextWhere(minBoxSizes, function(minSize) {\n return minSize.box === box;\n });\n\n var scaleMargin = {\n left: 0,\n right: 0,\n top: totalTopBoxesHeight,\n bottom: totalBottomBoxesHeight\n };\n\n if (minBoxSize) {\n box.update(minBoxSize.minSize.width, maxChartAreaHeight, scaleMargin);\n }\n }\n\n // Let the left layout know the final margin\n helpers.each(leftBoxes.concat(rightBoxes), finalFitVerticalBox);\n\n // Recalculate because the size of each layout might have changed slightly due to the margins (label rotation for instance)\n totalLeftBoxesWidth = leftPadding;\n totalRightBoxesWidth = rightPadding;\n totalTopBoxesHeight = topPadding;\n totalBottomBoxesHeight = bottomPadding;\n\n helpers.each(leftBoxes, function(box) {\n totalLeftBoxesWidth += box.width;\n });\n\n helpers.each(rightBoxes, function(box) {\n totalRightBoxesWidth += box.width;\n });\n\n helpers.each(topBoxes, function(box) {\n totalTopBoxesHeight += box.height;\n });\n helpers.each(bottomBoxes, function(box) {\n totalBottomBoxesHeight += box.height;\n });\n\n // We may be adding some padding to account for rotated x axis labels\n var leftPaddingAddition = Math.max(maxHorizontalLeftPadding - totalLeftBoxesWidth, 0);\n totalLeftBoxesWidth += leftPaddingAddition;\n totalRightBoxesWidth += Math.max(maxHorizontalRightPadding - totalRightBoxesWidth, 0);\n\n var topPaddingAddition = Math.max(maxVerticalTopPadding - totalTopBoxesHeight, 0);\n totalTopBoxesHeight += topPaddingAddition;\n totalBottomBoxesHeight += Math.max(maxVerticalBottomPadding - totalBottomBoxesHeight, 0);\n\n // Figure out if our chart area changed. This would occur if the dataset layout label rotation\n // changed due to the application of the margins in step 6. Since we can only get bigger, this is safe to do\n // without calling `fit` again\n var newMaxChartAreaHeight = height - totalTopBoxesHeight - totalBottomBoxesHeight;\n var newMaxChartAreaWidth = width - totalLeftBoxesWidth - totalRightBoxesWidth;\n\n if (newMaxChartAreaWidth !== maxChartAreaWidth || newMaxChartAreaHeight !== maxChartAreaHeight) {\n helpers.each(leftBoxes, function(box) {\n box.height = newMaxChartAreaHeight;\n });\n\n helpers.each(rightBoxes, function(box) {\n box.height = newMaxChartAreaHeight;\n });\n\n helpers.each(topBoxes, function(box) {\n if (!box.fullWidth) {\n box.width = newMaxChartAreaWidth;\n }\n });\n\n helpers.each(bottomBoxes, function(box) {\n if (!box.fullWidth) {\n box.width = newMaxChartAreaWidth;\n }\n });\n\n maxChartAreaHeight = newMaxChartAreaHeight;\n maxChartAreaWidth = newMaxChartAreaWidth;\n }\n\n // Step 7 - Position the boxes\n var left = leftPadding + leftPaddingAddition;\n var top = topPadding + topPaddingAddition;\n\n function placeBox(box) {\n if (box.isHorizontal()) {\n box.left = box.fullWidth ? leftPadding : totalLeftBoxesWidth;\n box.right = box.fullWidth ? width - rightPadding : totalLeftBoxesWidth + maxChartAreaWidth;\n box.top = top;\n box.bottom = top + box.height;\n\n // Move to next point\n top = box.bottom;\n\n } else {\n\n box.left = left;\n box.right = left + box.width;\n box.top = totalTopBoxesHeight;\n box.bottom = totalTopBoxesHeight + maxChartAreaHeight;\n\n // Move to next point\n left = box.right;\n }\n }\n\n helpers.each(leftBoxes.concat(topBoxes), placeBox);\n\n // Account for chart width and height\n left += maxChartAreaWidth;\n top += maxChartAreaHeight;\n\n helpers.each(rightBoxes, placeBox);\n helpers.each(bottomBoxes, placeBox);\n\n // Step 8\n chart.chartArea = {\n left: totalLeftBoxesWidth,\n top: totalTopBoxesHeight,\n right: totalLeftBoxesWidth + maxChartAreaWidth,\n bottom: totalTopBoxesHeight + maxChartAreaHeight\n };\n\n // Step 9\n helpers.each(chartAreaBoxes, function(box) {\n box.left = chart.chartArea.left;\n box.top = chart.chartArea.top;\n box.right = chart.chartArea.right;\n box.bottom = chart.chartArea.bottom;\n\n box.update(maxChartAreaWidth, maxChartAreaHeight);\n });\n }\n };\n};\n\n},{\"45\":45}],31:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n plugins: {}\n});\n\nmodule.exports = function(Chart) {\n\n /**\n * The plugin service singleton\n * @namespace Chart.plugins\n * @since 2.1.0\n */\n Chart.plugins = {\n /**\n * Globally registered plugins.\n * @private\n */\n _plugins: [],\n\n /**\n * This identifier is used to invalidate the descriptors cache attached to each chart\n * when a global plugin is registered or unregistered. In this case, the cache ID is\n * incremented and descriptors are regenerated during following API calls.\n * @private\n */\n _cacheId: 0,\n\n /**\n * Registers the given plugin(s) if not already registered.\n * @param {Array|Object} plugins plugin instance(s).\n */\n register: function(plugins) {\n var p = this._plugins;\n ([]).concat(plugins).forEach(function(plugin) {\n if (p.indexOf(plugin) === -1) {\n p.push(plugin);\n }\n });\n\n this._cacheId++;\n },\n\n /**\n * Unregisters the given plugin(s) only if registered.\n * @param {Array|Object} plugins plugin instance(s).\n */\n unregister: function(plugins) {\n var p = this._plugins;\n ([]).concat(plugins).forEach(function(plugin) {\n var idx = p.indexOf(plugin);\n if (idx !== -1) {\n p.splice(idx, 1);\n }\n });\n\n this._cacheId++;\n },\n\n /**\n * Remove all registered plugins.\n * @since 2.1.5\n */\n clear: function() {\n this._plugins = [];\n this._cacheId++;\n },\n\n /**\n * Returns the number of registered plugins?\n * @returns {Number}\n * @since 2.1.5\n */\n count: function() {\n return this._plugins.length;\n },\n\n /**\n * Returns all registered plugin instances.\n * @returns {Array} array of plugin objects.\n * @since 2.1.5\n */\n getAll: function() {\n return this._plugins;\n },\n\n /**\n * Calls enabled plugins for `chart` on the specified hook and with the given args.\n * This method immediately returns as soon as a plugin explicitly returns false. The\n * returned value can be used, for instance, to interrupt the current action.\n * @param {Object} chart - The chart instance for which plugins should be called.\n * @param {String} hook - The name of the plugin method to call (e.g. 'beforeUpdate').\n * @param {Array} [args] - Extra arguments to apply to the hook call.\n * @returns {Boolean} false if any of the plugins return false, else returns true.\n */\n notify: function(chart, hook, args) {\n var descriptors = this.descriptors(chart);\n var ilen = descriptors.length;\n var i, descriptor, plugin, params, method;\n\n for (i = 0; i < ilen; ++i) {\n descriptor = descriptors[i];\n plugin = descriptor.plugin;\n method = plugin[hook];\n if (typeof method === 'function') {\n params = [chart].concat(args || []);\n params.push(descriptor.options);\n if (method.apply(plugin, params) === false) {\n return false;\n }\n }\n }\n\n return true;\n },\n\n /**\n * Returns descriptors of enabled plugins for the given chart.\n * @returns {Array} [{ plugin, options }]\n * @private\n */\n descriptors: function(chart) {\n var cache = chart._plugins || (chart._plugins = {});\n if (cache.id === this._cacheId) {\n return cache.descriptors;\n }\n\n var plugins = [];\n var descriptors = [];\n var config = (chart && chart.config) || {};\n var options = (config.options && config.options.plugins) || {};\n\n this._plugins.concat(config.plugins || []).forEach(function(plugin) {\n var idx = plugins.indexOf(plugin);\n if (idx !== -1) {\n return;\n }\n\n var id = plugin.id;\n var opts = options[id];\n if (opts === false) {\n return;\n }\n\n if (opts === true) {\n opts = helpers.clone(defaults.global.plugins[id]);\n }\n\n plugins.push(plugin);\n descriptors.push({\n plugin: plugin,\n options: opts || {}\n });\n });\n\n cache.descriptors = descriptors;\n cache.id = this._cacheId;\n return descriptors;\n }\n };\n\n /**\n * Plugin extension hooks.\n * @interface IPlugin\n * @since 2.1.0\n */\n /**\n * @method IPlugin#beforeInit\n * @desc Called before initializing `chart`.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#afterInit\n * @desc Called after `chart` has been initialized and before the first update.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeUpdate\n * @desc Called before updating `chart`. If any plugin returns `false`, the update\n * is cancelled (and thus subsequent render(s)) until another `update` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart update.\n */\n /**\n * @method IPlugin#afterUpdate\n * @desc Called after `chart` has been updated and before rendering. Note that this\n * hook will not be called if the chart update has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeDatasetsUpdate\n * @desc Called before updating the `chart` datasets. If any plugin returns `false`,\n * the datasets update is cancelled until another `update` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} false to cancel the datasets update.\n * @since version 2.1.5\n */\n /**\n * @method IPlugin#afterDatasetsUpdate\n * @desc Called after the `chart` datasets have been updated. Note that this hook\n * will not be called if the datasets update has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n * @since version 2.1.5\n */\n /**\n * @method IPlugin#beforeDatasetUpdate\n * @desc Called before updating the `chart` dataset at the given `args.index`. If any plugin\n * returns `false`, the datasets update is cancelled until another `update` is triggered.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Number} args.index - The dataset index.\n * @param {Object} args.meta - The dataset metadata.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart datasets drawing.\n */\n /**\n * @method IPlugin#afterDatasetUpdate\n * @desc Called after the `chart` datasets at the given `args.index` has been updated. Note\n * that this hook will not be called if the datasets update has been previously cancelled.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Number} args.index - The dataset index.\n * @param {Object} args.meta - The dataset metadata.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeLayout\n * @desc Called before laying out `chart`. If any plugin returns `false`,\n * the layout update is cancelled until another `update` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart layout.\n */\n /**\n * @method IPlugin#afterLayout\n * @desc Called after the `chart` has been layed out. Note that this hook will not\n * be called if the layout update has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeRender\n * @desc Called before rendering `chart`. If any plugin returns `false`,\n * the rendering is cancelled until another `render` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart rendering.\n */\n /**\n * @method IPlugin#afterRender\n * @desc Called after the `chart` has been fully rendered (and animation completed). Note\n * that this hook will not be called if the rendering has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeDraw\n * @desc Called before drawing `chart` at every animation frame specified by the given\n * easing value. If any plugin returns `false`, the frame drawing is cancelled until\n * another `render` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Number} easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart drawing.\n */\n /**\n * @method IPlugin#afterDraw\n * @desc Called after the `chart` has been drawn for the specific easing value. Note\n * that this hook will not be called if the drawing has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Number} easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeDatasetsDraw\n * @desc Called before drawing the `chart` datasets. If any plugin returns `false`,\n * the datasets drawing is cancelled until another `render` is triggered.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Number} easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart datasets drawing.\n */\n /**\n * @method IPlugin#afterDatasetsDraw\n * @desc Called after the `chart` datasets have been drawn. Note that this hook\n * will not be called if the datasets drawing has been previously cancelled.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Number} easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeDatasetDraw\n * @desc Called before drawing the `chart` dataset at the given `args.index` (datasets\n * are drawn in the reverse order). If any plugin returns `false`, the datasets drawing\n * is cancelled until another `render` is triggered.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Number} args.index - The dataset index.\n * @param {Object} args.meta - The dataset metadata.\n * @param {Number} args.easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart datasets drawing.\n */\n /**\n * @method IPlugin#afterDatasetDraw\n * @desc Called after the `chart` datasets at the given `args.index` have been drawn\n * (datasets are drawn in the reverse order). Note that this hook will not be called\n * if the datasets drawing has been previously cancelled.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Number} args.index - The dataset index.\n * @param {Object} args.meta - The dataset metadata.\n * @param {Number} args.easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeTooltipDraw\n * @desc Called before drawing the `tooltip`. If any plugin returns `false`,\n * the tooltip drawing is cancelled until another `render` is triggered.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Object} args.tooltip - The tooltip.\n * @param {Number} args.easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n * @returns {Boolean} `false` to cancel the chart tooltip drawing.\n */\n /**\n * @method IPlugin#afterTooltipDraw\n * @desc Called after drawing the `tooltip`. Note that this hook will not\n * be called if the tooltip drawing has been previously cancelled.\n * @param {Chart} chart - The chart instance.\n * @param {Object} args - The call arguments.\n * @param {Object} args.tooltip - The tooltip.\n * @param {Number} args.easingValue - The current animation value, between 0.0 and 1.0.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#beforeEvent\n * @desc Called before processing the specified `event`. If any plugin returns `false`,\n * the event will be discarded.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {IEvent} event - The event object.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#afterEvent\n * @desc Called after the `event` has been consumed. Note that this hook\n * will not be called if the `event` has been previously discarded.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {IEvent} event - The event object.\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#resize\n * @desc Called after the chart as been resized.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Number} size - The new canvas display size (eq. canvas.style width & height).\n * @param {Object} options - The plugin options.\n */\n /**\n * @method IPlugin#destroy\n * @desc Called after the chart as been destroyed.\n * @param {Chart.Controller} chart - The chart instance.\n * @param {Object} options - The plugin options.\n */\n\n /**\n * Provided for backward compatibility, use Chart.plugins instead\n * @namespace Chart.pluginService\n * @deprecated since version 2.1.5\n * @todo remove at version 3\n * @private\n */\n Chart.pluginService = Chart.plugins;\n\n /**\n * Provided for backward compatibility, inheriting from Chart.PlugingBase has no\n * effect, instead simply create/register plugins via plain JavaScript objects.\n * @interface Chart.PluginBase\n * @deprecated since version 2.5.0\n * @todo remove at version 3\n * @private\n */\n Chart.PluginBase = Element.extend({});\n};\n\n},{\"25\":25,\"26\":26,\"45\":45}],32:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\nvar Ticks = require(34);\n\ndefaults._set('scale', {\n display: true,\n position: 'left',\n offset: false,\n\n // grid line settings\n gridLines: {\n display: true,\n color: 'rgba(0, 0, 0, 0.1)',\n lineWidth: 1,\n drawBorder: true,\n drawOnChartArea: true,\n drawTicks: true,\n tickMarkLength: 10,\n zeroLineWidth: 1,\n zeroLineColor: 'rgba(0,0,0,0.25)',\n zeroLineBorderDash: [],\n zeroLineBorderDashOffset: 0.0,\n offsetGridLines: false,\n borderDash: [],\n borderDashOffset: 0.0\n },\n\n // scale label\n scaleLabel: {\n // display property\n display: false,\n\n // actual label\n labelString: '',\n\n // line height\n lineHeight: 1.2,\n\n // top/bottom padding\n padding: {\n top: 4,\n bottom: 4\n }\n },\n\n // label settings\n ticks: {\n beginAtZero: false,\n minRotation: 0,\n maxRotation: 50,\n mirror: false,\n padding: 0,\n reverse: false,\n display: true,\n autoSkip: true,\n autoSkipPadding: 0,\n labelOffset: 0,\n // We pass through arrays to be rendered as multiline labels, we convert Others to strings here.\n callback: Ticks.formatters.values,\n minor: {},\n major: {}\n }\n});\n\nfunction labelsFromTicks(ticks) {\n var labels = [];\n var i, ilen;\n\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n labels.push(ticks[i].label);\n }\n\n return labels;\n}\n\nfunction getLineValue(scale, index, offsetGridLines) {\n var lineValue = scale.getPixelForTick(index);\n\n if (offsetGridLines) {\n if (index === 0) {\n lineValue -= (scale.getPixelForTick(1) - lineValue) / 2;\n } else {\n lineValue -= (lineValue - scale.getPixelForTick(index - 1)) / 2;\n }\n }\n return lineValue;\n}\n\nmodule.exports = function(Chart) {\n\n function computeTextSize(context, tick, font) {\n return helpers.isArray(tick) ?\n helpers.longestText(context, font, tick) :\n context.measureText(tick).width;\n }\n\n function parseFontOptions(options) {\n var valueOrDefault = helpers.valueOrDefault;\n var globalDefaults = defaults.global;\n var size = valueOrDefault(options.fontSize, globalDefaults.defaultFontSize);\n var style = valueOrDefault(options.fontStyle, globalDefaults.defaultFontStyle);\n var family = valueOrDefault(options.fontFamily, globalDefaults.defaultFontFamily);\n\n return {\n size: size,\n style: style,\n family: family,\n font: helpers.fontString(size, style, family)\n };\n }\n\n function parseLineHeight(options) {\n return helpers.options.toLineHeight(\n helpers.valueOrDefault(options.lineHeight, 1.2),\n helpers.valueOrDefault(options.fontSize, defaults.global.defaultFontSize));\n }\n\n Chart.Scale = Element.extend({\n /**\n * Get the padding needed for the scale\n * @method getPadding\n * @private\n * @returns {Padding} the necessary padding\n */\n getPadding: function() {\n var me = this;\n return {\n left: me.paddingLeft || 0,\n top: me.paddingTop || 0,\n right: me.paddingRight || 0,\n bottom: me.paddingBottom || 0\n };\n },\n\n /**\n * Returns the scale tick objects ({label, major})\n * @since 2.7\n */\n getTicks: function() {\n return this._ticks;\n },\n\n // These methods are ordered by lifecyle. Utilities then follow.\n // Any function defined here is inherited by all scale types.\n // Any function can be extended by the scale type\n\n mergeTicksOptions: function() {\n var ticks = this.options.ticks;\n if (ticks.minor === false) {\n ticks.minor = {\n display: false\n };\n }\n if (ticks.major === false) {\n ticks.major = {\n display: false\n };\n }\n for (var key in ticks) {\n if (key !== 'major' && key !== 'minor') {\n if (typeof ticks.minor[key] === 'undefined') {\n ticks.minor[key] = ticks[key];\n }\n if (typeof ticks.major[key] === 'undefined') {\n ticks.major[key] = ticks[key];\n }\n }\n }\n },\n beforeUpdate: function() {\n helpers.callback(this.options.beforeUpdate, [this]);\n },\n update: function(maxWidth, maxHeight, margins) {\n var me = this;\n var i, ilen, labels, label, ticks, tick;\n\n // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;)\n me.beforeUpdate();\n\n // Absorb the master measurements\n me.maxWidth = maxWidth;\n me.maxHeight = maxHeight;\n me.margins = helpers.extend({\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n }, margins);\n me.longestTextCache = me.longestTextCache || {};\n\n // Dimensions\n me.beforeSetDimensions();\n me.setDimensions();\n me.afterSetDimensions();\n\n // Data min/max\n me.beforeDataLimits();\n me.determineDataLimits();\n me.afterDataLimits();\n\n // Ticks - `this.ticks` is now DEPRECATED!\n // Internal ticks are now stored as objects in the PRIVATE `this._ticks` member\n // and must not be accessed directly from outside this class. `this.ticks` being\n // around for long time and not marked as private, we can't change its structure\n // without unexpected breaking changes. If you need to access the scale ticks,\n // use scale.getTicks() instead.\n\n me.beforeBuildTicks();\n\n // New implementations should return an array of objects but for BACKWARD COMPAT,\n // we still support no return (`this.ticks` internally set by calling this method).\n ticks = me.buildTicks() || [];\n\n me.afterBuildTicks();\n\n me.beforeTickToLabelConversion();\n\n // New implementations should return the formatted tick labels but for BACKWARD\n // COMPAT, we still support no return (`this.ticks` internally changed by calling\n // this method and supposed to contain only string values).\n labels = me.convertTicksToLabels(ticks) || me.ticks;\n\n me.afterTickToLabelConversion();\n\n me.ticks = labels; // BACKWARD COMPATIBILITY\n\n // IMPORTANT: from this point, we consider that `this.ticks` will NEVER change!\n\n // BACKWARD COMPAT: synchronize `_ticks` with labels (so potentially `this.ticks`)\n for (i = 0, ilen = labels.length; i < ilen; ++i) {\n label = labels[i];\n tick = ticks[i];\n if (!tick) {\n ticks.push(tick = {\n label: label,\n major: false\n });\n } else {\n tick.label = label;\n }\n }\n\n me._ticks = ticks;\n\n // Tick Rotation\n me.beforeCalculateTickRotation();\n me.calculateTickRotation();\n me.afterCalculateTickRotation();\n // Fit\n me.beforeFit();\n me.fit();\n me.afterFit();\n //\n me.afterUpdate();\n\n return me.minSize;\n\n },\n afterUpdate: function() {\n helpers.callback(this.options.afterUpdate, [this]);\n },\n\n //\n\n beforeSetDimensions: function() {\n helpers.callback(this.options.beforeSetDimensions, [this]);\n },\n setDimensions: function() {\n var me = this;\n // Set the unconstrained dimension before label rotation\n if (me.isHorizontal()) {\n // Reset position before calculating rotation\n me.width = me.maxWidth;\n me.left = 0;\n me.right = me.width;\n } else {\n me.height = me.maxHeight;\n\n // Reset position before calculating rotation\n me.top = 0;\n me.bottom = me.height;\n }\n\n // Reset padding\n me.paddingLeft = 0;\n me.paddingTop = 0;\n me.paddingRight = 0;\n me.paddingBottom = 0;\n },\n afterSetDimensions: function() {\n helpers.callback(this.options.afterSetDimensions, [this]);\n },\n\n // Data limits\n beforeDataLimits: function() {\n helpers.callback(this.options.beforeDataLimits, [this]);\n },\n determineDataLimits: helpers.noop,\n afterDataLimits: function() {\n helpers.callback(this.options.afterDataLimits, [this]);\n },\n\n //\n beforeBuildTicks: function() {\n helpers.callback(this.options.beforeBuildTicks, [this]);\n },\n buildTicks: helpers.noop,\n afterBuildTicks: function() {\n helpers.callback(this.options.afterBuildTicks, [this]);\n },\n\n beforeTickToLabelConversion: function() {\n helpers.callback(this.options.beforeTickToLabelConversion, [this]);\n },\n convertTicksToLabels: function() {\n var me = this;\n // Convert ticks to strings\n var tickOpts = me.options.ticks;\n me.ticks = me.ticks.map(tickOpts.userCallback || tickOpts.callback, this);\n },\n afterTickToLabelConversion: function() {\n helpers.callback(this.options.afterTickToLabelConversion, [this]);\n },\n\n //\n\n beforeCalculateTickRotation: function() {\n helpers.callback(this.options.beforeCalculateTickRotation, [this]);\n },\n calculateTickRotation: function() {\n var me = this;\n var context = me.ctx;\n var tickOpts = me.options.ticks;\n var labels = labelsFromTicks(me._ticks);\n\n // Get the width of each grid by calculating the difference\n // between x offsets between 0 and 1.\n var tickFont = parseFontOptions(tickOpts);\n context.font = tickFont.font;\n\n var labelRotation = tickOpts.minRotation || 0;\n\n if (labels.length && me.options.display && me.isHorizontal()) {\n var originalLabelWidth = helpers.longestText(context, tickFont.font, labels, me.longestTextCache);\n var labelWidth = originalLabelWidth;\n var cosRotation, sinRotation;\n\n // Allow 3 pixels x2 padding either side for label readability\n var tickWidth = me.getPixelForTick(1) - me.getPixelForTick(0) - 6;\n\n // Max label rotation can be set or default to 90 - also act as a loop counter\n while (labelWidth > tickWidth && labelRotation < tickOpts.maxRotation) {\n var angleRadians = helpers.toRadians(labelRotation);\n cosRotation = Math.cos(angleRadians);\n sinRotation = Math.sin(angleRadians);\n\n if (sinRotation * originalLabelWidth > me.maxHeight) {\n // go back one step\n labelRotation--;\n break;\n }\n\n labelRotation++;\n labelWidth = cosRotation * originalLabelWidth;\n }\n }\n\n me.labelRotation = labelRotation;\n },\n afterCalculateTickRotation: function() {\n helpers.callback(this.options.afterCalculateTickRotation, [this]);\n },\n\n //\n\n beforeFit: function() {\n helpers.callback(this.options.beforeFit, [this]);\n },\n fit: function() {\n var me = this;\n // Reset\n var minSize = me.minSize = {\n width: 0,\n height: 0\n };\n\n var labels = labelsFromTicks(me._ticks);\n\n var opts = me.options;\n var tickOpts = opts.ticks;\n var scaleLabelOpts = opts.scaleLabel;\n var gridLineOpts = opts.gridLines;\n var display = opts.display;\n var isHorizontal = me.isHorizontal();\n\n var tickFont = parseFontOptions(tickOpts);\n var tickMarkLength = opts.gridLines.tickMarkLength;\n\n // Width\n if (isHorizontal) {\n // subtract the margins to line up with the chartArea if we are a full width scale\n minSize.width = me.isFullWidth() ? me.maxWidth - me.margins.left - me.margins.right : me.maxWidth;\n } else {\n minSize.width = display && gridLineOpts.drawTicks ? tickMarkLength : 0;\n }\n\n // height\n if (isHorizontal) {\n minSize.height = display && gridLineOpts.drawTicks ? tickMarkLength : 0;\n } else {\n minSize.height = me.maxHeight; // fill all the height\n }\n\n // Are we showing a title for the scale?\n if (scaleLabelOpts.display && display) {\n var scaleLabelLineHeight = parseLineHeight(scaleLabelOpts);\n var scaleLabelPadding = helpers.options.toPadding(scaleLabelOpts.padding);\n var deltaHeight = scaleLabelLineHeight + scaleLabelPadding.height;\n\n if (isHorizontal) {\n minSize.height += deltaHeight;\n } else {\n minSize.width += deltaHeight;\n }\n }\n\n // Don't bother fitting the ticks if we are not showing them\n if (tickOpts.display && display) {\n var largestTextWidth = helpers.longestText(me.ctx, tickFont.font, labels, me.longestTextCache);\n var tallestLabelHeightInLines = helpers.numberOfLabelLines(labels);\n var lineSpace = tickFont.size * 0.5;\n var tickPadding = me.options.ticks.padding;\n\n if (isHorizontal) {\n // A horizontal axis is more constrained by the height.\n me.longestLabelWidth = largestTextWidth;\n\n var angleRadians = helpers.toRadians(me.labelRotation);\n var cosRotation = Math.cos(angleRadians);\n var sinRotation = Math.sin(angleRadians);\n\n // TODO - improve this calculation\n var labelHeight = (sinRotation * largestTextWidth)\n + (tickFont.size * tallestLabelHeightInLines)\n + (lineSpace * (tallestLabelHeightInLines - 1))\n + lineSpace; // padding\n\n minSize.height = Math.min(me.maxHeight, minSize.height + labelHeight + tickPadding);\n\n me.ctx.font = tickFont.font;\n var firstLabelWidth = computeTextSize(me.ctx, labels[0], tickFont.font);\n var lastLabelWidth = computeTextSize(me.ctx, labels[labels.length - 1], tickFont.font);\n\n // Ensure that our ticks are always inside the canvas. When rotated, ticks are right aligned\n // which means that the right padding is dominated by the font height\n if (me.labelRotation !== 0) {\n me.paddingLeft = opts.position === 'bottom' ? (cosRotation * firstLabelWidth) + 3 : (cosRotation * lineSpace) + 3; // add 3 px to move away from canvas edges\n me.paddingRight = opts.position === 'bottom' ? (cosRotation * lineSpace) + 3 : (cosRotation * lastLabelWidth) + 3;\n } else {\n me.paddingLeft = firstLabelWidth / 2 + 3; // add 3 px to move away from canvas edges\n me.paddingRight = lastLabelWidth / 2 + 3;\n }\n } else {\n // A vertical axis is more constrained by the width. Labels are the\n // dominant factor here, so get that length first and account for padding\n if (tickOpts.mirror) {\n largestTextWidth = 0;\n } else {\n // use lineSpace for consistency with horizontal axis\n // tickPadding is not implemented for horizontal\n largestTextWidth += tickPadding + lineSpace;\n }\n\n minSize.width = Math.min(me.maxWidth, minSize.width + largestTextWidth);\n\n me.paddingTop = tickFont.size / 2;\n me.paddingBottom = tickFont.size / 2;\n }\n }\n\n me.handleMargins();\n\n me.width = minSize.width;\n me.height = minSize.height;\n },\n\n /**\n * Handle margins and padding interactions\n * @private\n */\n handleMargins: function() {\n var me = this;\n if (me.margins) {\n me.paddingLeft = Math.max(me.paddingLeft - me.margins.left, 0);\n me.paddingTop = Math.max(me.paddingTop - me.margins.top, 0);\n me.paddingRight = Math.max(me.paddingRight - me.margins.right, 0);\n me.paddingBottom = Math.max(me.paddingBottom - me.margins.bottom, 0);\n }\n },\n\n afterFit: function() {\n helpers.callback(this.options.afterFit, [this]);\n },\n\n // Shared Methods\n isHorizontal: function() {\n return this.options.position === 'top' || this.options.position === 'bottom';\n },\n isFullWidth: function() {\n return (this.options.fullWidth);\n },\n\n // Get the correct value. NaN bad inputs, If the value type is object get the x or y based on whether we are horizontal or not\n getRightValue: function(rawValue) {\n // Null and undefined values first\n if (helpers.isNullOrUndef(rawValue)) {\n return NaN;\n }\n // isNaN(object) returns true, so make sure NaN is checking for a number; Discard Infinite values\n if (typeof rawValue === 'number' && !isFinite(rawValue)) {\n return NaN;\n }\n // If it is in fact an object, dive in one more level\n if (rawValue) {\n if (this.isHorizontal()) {\n if (rawValue.x !== undefined) {\n return this.getRightValue(rawValue.x);\n }\n } else if (rawValue.y !== undefined) {\n return this.getRightValue(rawValue.y);\n }\n }\n\n // Value is good, return it\n return rawValue;\n },\n\n /**\n * Used to get the value to display in the tooltip for the data at the given index\n * @param index\n * @param datasetIndex\n */\n getLabelForIndex: helpers.noop,\n\n /**\n * Returns the location of the given data point. Value can either be an index or a numerical value\n * The coordinate (0, 0) is at the upper-left corner of the canvas\n * @param value\n * @param index\n * @param datasetIndex\n */\n getPixelForValue: helpers.noop,\n\n /**\n * Used to get the data value from a given pixel. This is the inverse of getPixelForValue\n * The coordinate (0, 0) is at the upper-left corner of the canvas\n * @param pixel\n */\n getValueForPixel: helpers.noop,\n\n /**\n * Returns the location of the tick at the given index\n * The coordinate (0, 0) is at the upper-left corner of the canvas\n */\n getPixelForTick: function(index) {\n var me = this;\n var offset = me.options.offset;\n if (me.isHorizontal()) {\n var innerWidth = me.width - (me.paddingLeft + me.paddingRight);\n var tickWidth = innerWidth / Math.max((me._ticks.length - (offset ? 0 : 1)), 1);\n var pixel = (tickWidth * index) + me.paddingLeft;\n\n if (offset) {\n pixel += tickWidth / 2;\n }\n\n var finalVal = me.left + Math.round(pixel);\n finalVal += me.isFullWidth() ? me.margins.left : 0;\n return finalVal;\n }\n var innerHeight = me.height - (me.paddingTop + me.paddingBottom);\n return me.top + (index * (innerHeight / (me._ticks.length - 1)));\n },\n\n /**\n * Utility for getting the pixel location of a percentage of scale\n * The coordinate (0, 0) is at the upper-left corner of the canvas\n */\n getPixelForDecimal: function(decimal) {\n var me = this;\n if (me.isHorizontal()) {\n var innerWidth = me.width - (me.paddingLeft + me.paddingRight);\n var valueOffset = (innerWidth * decimal) + me.paddingLeft;\n\n var finalVal = me.left + Math.round(valueOffset);\n finalVal += me.isFullWidth() ? me.margins.left : 0;\n return finalVal;\n }\n return me.top + (decimal * me.height);\n },\n\n /**\n * Returns the pixel for the minimum chart value\n * The coordinate (0, 0) is at the upper-left corner of the canvas\n */\n getBasePixel: function() {\n return this.getPixelForValue(this.getBaseValue());\n },\n\n getBaseValue: function() {\n var me = this;\n var min = me.min;\n var max = me.max;\n\n return me.beginAtZero ? 0 :\n min < 0 && max < 0 ? max :\n min > 0 && max > 0 ? min :\n 0;\n },\n\n /**\n * Returns a subset of ticks to be plotted to avoid overlapping labels.\n * @private\n */\n _autoSkip: function(ticks) {\n var skipRatio;\n var me = this;\n var isHorizontal = me.isHorizontal();\n var optionTicks = me.options.ticks.minor;\n var tickCount = ticks.length;\n var labelRotationRadians = helpers.toRadians(me.labelRotation);\n var cosRotation = Math.cos(labelRotationRadians);\n var longestRotatedLabel = me.longestLabelWidth * cosRotation;\n var result = [];\n var i, tick, shouldSkip;\n\n // figure out the maximum number of gridlines to show\n var maxTicks;\n if (optionTicks.maxTicksLimit) {\n maxTicks = optionTicks.maxTicksLimit;\n }\n\n if (isHorizontal) {\n skipRatio = false;\n\n if ((longestRotatedLabel + optionTicks.autoSkipPadding) * tickCount > (me.width - (me.paddingLeft + me.paddingRight))) {\n skipRatio = 1 + Math.floor(((longestRotatedLabel + optionTicks.autoSkipPadding) * tickCount) / (me.width - (me.paddingLeft + me.paddingRight)));\n }\n\n // if they defined a max number of optionTicks,\n // increase skipRatio until that number is met\n if (maxTicks && tickCount > maxTicks) {\n skipRatio = Math.max(skipRatio, Math.floor(tickCount / maxTicks));\n }\n }\n\n for (i = 0; i < tickCount; i++) {\n tick = ticks[i];\n\n // Since we always show the last tick,we need may need to hide the last shown one before\n shouldSkip = (skipRatio > 1 && i % skipRatio > 0) || (i % skipRatio === 0 && i + skipRatio >= tickCount);\n if (shouldSkip && i !== tickCount - 1) {\n // leave tick in place but make sure it's not displayed (#4635)\n delete tick.label;\n }\n result.push(tick);\n }\n return result;\n },\n\n // Actually draw the scale on the canvas\n // @param {rectangle} chartArea : the area of the chart to draw full grid lines on\n draw: function(chartArea) {\n var me = this;\n var options = me.options;\n if (!options.display) {\n return;\n }\n\n var context = me.ctx;\n var globalDefaults = defaults.global;\n var optionTicks = options.ticks.minor;\n var optionMajorTicks = options.ticks.major || optionTicks;\n var gridLines = options.gridLines;\n var scaleLabel = options.scaleLabel;\n\n var isRotated = me.labelRotation !== 0;\n var isHorizontal = me.isHorizontal();\n\n var ticks = optionTicks.autoSkip ? me._autoSkip(me.getTicks()) : me.getTicks();\n var tickFontColor = helpers.valueOrDefault(optionTicks.fontColor, globalDefaults.defaultFontColor);\n var tickFont = parseFontOptions(optionTicks);\n var majorTickFontColor = helpers.valueOrDefault(optionMajorTicks.fontColor, globalDefaults.defaultFontColor);\n var majorTickFont = parseFontOptions(optionMajorTicks);\n\n var tl = gridLines.drawTicks ? gridLines.tickMarkLength : 0;\n\n var scaleLabelFontColor = helpers.valueOrDefault(scaleLabel.fontColor, globalDefaults.defaultFontColor);\n var scaleLabelFont = parseFontOptions(scaleLabel);\n var scaleLabelPadding = helpers.options.toPadding(scaleLabel.padding);\n var labelRotationRadians = helpers.toRadians(me.labelRotation);\n\n var itemsToDraw = [];\n\n var xTickStart = options.position === 'right' ? me.left : me.right - tl;\n var xTickEnd = options.position === 'right' ? me.left + tl : me.right;\n var yTickStart = options.position === 'bottom' ? me.top : me.bottom - tl;\n var yTickEnd = options.position === 'bottom' ? me.top + tl : me.bottom;\n\n helpers.each(ticks, function(tick, index) {\n // autoskipper skipped this tick (#4635)\n if (helpers.isNullOrUndef(tick.label)) {\n return;\n }\n\n var label = tick.label;\n var lineWidth, lineColor, borderDash, borderDashOffset;\n if (index === me.zeroLineIndex && options.offset === gridLines.offsetGridLines) {\n // Draw the first index specially\n lineWidth = gridLines.zeroLineWidth;\n lineColor = gridLines.zeroLineColor;\n borderDash = gridLines.zeroLineBorderDash;\n borderDashOffset = gridLines.zeroLineBorderDashOffset;\n } else {\n lineWidth = helpers.valueAtIndexOrDefault(gridLines.lineWidth, index);\n lineColor = helpers.valueAtIndexOrDefault(gridLines.color, index);\n borderDash = helpers.valueOrDefault(gridLines.borderDash, globalDefaults.borderDash);\n borderDashOffset = helpers.valueOrDefault(gridLines.borderDashOffset, globalDefaults.borderDashOffset);\n }\n\n // Common properties\n var tx1, ty1, tx2, ty2, x1, y1, x2, y2, labelX, labelY;\n var textAlign = 'middle';\n var textBaseline = 'middle';\n var tickPadding = optionTicks.padding;\n\n if (isHorizontal) {\n var labelYOffset = tl + tickPadding;\n\n if (options.position === 'bottom') {\n // bottom\n textBaseline = !isRotated ? 'top' : 'middle';\n textAlign = !isRotated ? 'center' : 'right';\n labelY = me.top + labelYOffset;\n } else {\n // top\n textBaseline = !isRotated ? 'bottom' : 'middle';\n textAlign = !isRotated ? 'center' : 'left';\n labelY = me.bottom - labelYOffset;\n }\n\n var xLineValue = getLineValue(me, index, gridLines.offsetGridLines && ticks.length > 1);\n if (xLineValue < me.left) {\n lineColor = 'rgba(0,0,0,0)';\n }\n xLineValue += helpers.aliasPixel(lineWidth);\n\n labelX = me.getPixelForTick(index) + optionTicks.labelOffset; // x values for optionTicks (need to consider offsetLabel option)\n\n tx1 = tx2 = x1 = x2 = xLineValue;\n ty1 = yTickStart;\n ty2 = yTickEnd;\n y1 = chartArea.top;\n y2 = chartArea.bottom;\n } else {\n var isLeft = options.position === 'left';\n var labelXOffset;\n\n if (optionTicks.mirror) {\n textAlign = isLeft ? 'left' : 'right';\n labelXOffset = tickPadding;\n } else {\n textAlign = isLeft ? 'right' : 'left';\n labelXOffset = tl + tickPadding;\n }\n\n labelX = isLeft ? me.right - labelXOffset : me.left + labelXOffset;\n\n var yLineValue = getLineValue(me, index, gridLines.offsetGridLines && ticks.length > 1);\n if (yLineValue < me.top) {\n lineColor = 'rgba(0,0,0,0)';\n }\n yLineValue += helpers.aliasPixel(lineWidth);\n\n labelY = me.getPixelForTick(index) + optionTicks.labelOffset;\n\n tx1 = xTickStart;\n tx2 = xTickEnd;\n x1 = chartArea.left;\n x2 = chartArea.right;\n ty1 = ty2 = y1 = y2 = yLineValue;\n }\n\n itemsToDraw.push({\n tx1: tx1,\n ty1: ty1,\n tx2: tx2,\n ty2: ty2,\n x1: x1,\n y1: y1,\n x2: x2,\n y2: y2,\n labelX: labelX,\n labelY: labelY,\n glWidth: lineWidth,\n glColor: lineColor,\n glBorderDash: borderDash,\n glBorderDashOffset: borderDashOffset,\n rotation: -1 * labelRotationRadians,\n label: label,\n major: tick.major,\n textBaseline: textBaseline,\n textAlign: textAlign\n });\n });\n\n // Draw all of the tick labels, tick marks, and grid lines at the correct places\n helpers.each(itemsToDraw, function(itemToDraw) {\n if (gridLines.display) {\n context.save();\n context.lineWidth = itemToDraw.glWidth;\n context.strokeStyle = itemToDraw.glColor;\n if (context.setLineDash) {\n context.setLineDash(itemToDraw.glBorderDash);\n context.lineDashOffset = itemToDraw.glBorderDashOffset;\n }\n\n context.beginPath();\n\n if (gridLines.drawTicks) {\n context.moveTo(itemToDraw.tx1, itemToDraw.ty1);\n context.lineTo(itemToDraw.tx2, itemToDraw.ty2);\n }\n\n if (gridLines.drawOnChartArea) {\n context.moveTo(itemToDraw.x1, itemToDraw.y1);\n context.lineTo(itemToDraw.x2, itemToDraw.y2);\n }\n\n context.stroke();\n context.restore();\n }\n\n if (optionTicks.display) {\n // Make sure we draw text in the correct color and font\n context.save();\n context.translate(itemToDraw.labelX, itemToDraw.labelY);\n context.rotate(itemToDraw.rotation);\n context.font = itemToDraw.major ? majorTickFont.font : tickFont.font;\n context.fillStyle = itemToDraw.major ? majorTickFontColor : tickFontColor;\n context.textBaseline = itemToDraw.textBaseline;\n context.textAlign = itemToDraw.textAlign;\n\n var label = itemToDraw.label;\n if (helpers.isArray(label)) {\n for (var i = 0, y = 0; i < label.length; ++i) {\n // We just make sure the multiline element is a string here..\n context.fillText('' + label[i], 0, y);\n // apply same lineSpacing as calculated @ L#320\n y += (tickFont.size * 1.5);\n }\n } else {\n context.fillText(label, 0, 0);\n }\n context.restore();\n }\n });\n\n if (scaleLabel.display) {\n // Draw the scale label\n var scaleLabelX;\n var scaleLabelY;\n var rotation = 0;\n var halfLineHeight = parseLineHeight(scaleLabel) / 2;\n\n if (isHorizontal) {\n scaleLabelX = me.left + ((me.right - me.left) / 2); // midpoint of the width\n scaleLabelY = options.position === 'bottom'\n ? me.bottom - halfLineHeight - scaleLabelPadding.bottom\n : me.top + halfLineHeight + scaleLabelPadding.top;\n } else {\n var isLeft = options.position === 'left';\n scaleLabelX = isLeft\n ? me.left + halfLineHeight + scaleLabelPadding.top\n : me.right - halfLineHeight - scaleLabelPadding.top;\n scaleLabelY = me.top + ((me.bottom - me.top) / 2);\n rotation = isLeft ? -0.5 * Math.PI : 0.5 * Math.PI;\n }\n\n context.save();\n context.translate(scaleLabelX, scaleLabelY);\n context.rotate(rotation);\n context.textAlign = 'center';\n context.textBaseline = 'middle';\n context.fillStyle = scaleLabelFontColor; // render in correct colour\n context.font = scaleLabelFont.font;\n context.fillText(scaleLabel.labelString, 0, 0);\n context.restore();\n }\n\n if (gridLines.drawBorder) {\n // Draw the line at the edge of the axis\n context.lineWidth = helpers.valueAtIndexOrDefault(gridLines.lineWidth, 0);\n context.strokeStyle = helpers.valueAtIndexOrDefault(gridLines.color, 0);\n var x1 = me.left;\n var x2 = me.right;\n var y1 = me.top;\n var y2 = me.bottom;\n\n var aliasPixel = helpers.aliasPixel(context.lineWidth);\n if (isHorizontal) {\n y1 = y2 = options.position === 'top' ? me.bottom : me.top;\n y1 += aliasPixel;\n y2 += aliasPixel;\n } else {\n x1 = x2 = options.position === 'left' ? me.right : me.left;\n x1 += aliasPixel;\n x2 += aliasPixel;\n }\n\n context.beginPath();\n context.moveTo(x1, y1);\n context.lineTo(x2, y2);\n context.stroke();\n }\n }\n });\n};\n\n},{\"25\":25,\"26\":26,\"34\":34,\"45\":45}],33:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar helpers = require(45);\n\nmodule.exports = function(Chart) {\n\n Chart.scaleService = {\n // Scale registration object. Extensions can register new scale types (such as log or DB scales) and then\n // use the new chart options to grab the correct scale\n constructors: {},\n // Use a registration function so that we can move to an ES6 map when we no longer need to support\n // old browsers\n\n // Scale config defaults\n defaults: {},\n registerScaleType: function(type, scaleConstructor, scaleDefaults) {\n this.constructors[type] = scaleConstructor;\n this.defaults[type] = helpers.clone(scaleDefaults);\n },\n getScaleConstructor: function(type) {\n return this.constructors.hasOwnProperty(type) ? this.constructors[type] : undefined;\n },\n getScaleDefaults: function(type) {\n // Return the scale defaults merged with the global settings so that we always use the latest ones\n return this.defaults.hasOwnProperty(type) ? helpers.merge({}, [defaults.scale, this.defaults[type]]) : {};\n },\n updateScaleDefaults: function(type, additions) {\n var me = this;\n if (me.defaults.hasOwnProperty(type)) {\n me.defaults[type] = helpers.extend(me.defaults[type], additions);\n }\n },\n addScalesToLayout: function(chart) {\n // Adds each scale to the chart.boxes array to be sized accordingly\n helpers.each(chart.scales, function(scale) {\n // Set ILayoutItem parameters for backwards compatibility\n scale.fullWidth = scale.options.fullWidth;\n scale.position = scale.options.position;\n scale.weight = scale.options.weight;\n Chart.layoutService.addBox(chart, scale);\n });\n }\n };\n};\n\n},{\"25\":25,\"45\":45}],34:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\n\n/**\n * Namespace to hold static tick generation functions\n * @namespace Chart.Ticks\n */\nmodule.exports = {\n /**\n * Namespace to hold generators for different types of ticks\n * @namespace Chart.Ticks.generators\n */\n generators: {\n /**\n * Interface for the options provided to the numeric tick generator\n * @interface INumericTickGenerationOptions\n */\n /**\n * The maximum number of ticks to display\n * @name INumericTickGenerationOptions#maxTicks\n * @type Number\n */\n /**\n * The distance between each tick.\n * @name INumericTickGenerationOptions#stepSize\n * @type Number\n * @optional\n */\n /**\n * Forced minimum for the ticks. If not specified, the minimum of the data range is used to calculate the tick minimum\n * @name INumericTickGenerationOptions#min\n * @type Number\n * @optional\n */\n /**\n * The maximum value of the ticks. If not specified, the maximum of the data range is used to calculate the tick maximum\n * @name INumericTickGenerationOptions#max\n * @type Number\n * @optional\n */\n\n /**\n * Generate a set of linear ticks\n * @method Chart.Ticks.generators.linear\n * @param generationOptions {INumericTickGenerationOptions} the options used to generate the ticks\n * @param dataRange {IRange} the range of the data\n * @returns {Array} array of tick values\n */\n linear: function(generationOptions, dataRange) {\n var ticks = [];\n // To get a \"nice\" value for the tick spacing, we will use the appropriately named\n // \"nice number\" algorithm. See http://stackoverflow.com/questions/8506881/nice-label-algorithm-for-charts-with-minimum-ticks\n // for details.\n\n var spacing;\n if (generationOptions.stepSize && generationOptions.stepSize > 0) {\n spacing = generationOptions.stepSize;\n } else {\n var niceRange = helpers.niceNum(dataRange.max - dataRange.min, false);\n spacing = helpers.niceNum(niceRange / (generationOptions.maxTicks - 1), true);\n }\n var niceMin = Math.floor(dataRange.min / spacing) * spacing;\n var niceMax = Math.ceil(dataRange.max / spacing) * spacing;\n\n // If min, max and stepSize is set and they make an evenly spaced scale use it.\n if (generationOptions.min && generationOptions.max && generationOptions.stepSize) {\n // If very close to our whole number, use it.\n if (helpers.almostWhole((generationOptions.max - generationOptions.min) / generationOptions.stepSize, spacing / 1000)) {\n niceMin = generationOptions.min;\n niceMax = generationOptions.max;\n }\n }\n\n var numSpaces = (niceMax - niceMin) / spacing;\n // If very close to our rounded value, use it.\n if (helpers.almostEquals(numSpaces, Math.round(numSpaces), spacing / 1000)) {\n numSpaces = Math.round(numSpaces);\n } else {\n numSpaces = Math.ceil(numSpaces);\n }\n\n // Put the values into the ticks array\n ticks.push(generationOptions.min !== undefined ? generationOptions.min : niceMin);\n for (var j = 1; j < numSpaces; ++j) {\n ticks.push(niceMin + (j * spacing));\n }\n ticks.push(generationOptions.max !== undefined ? generationOptions.max : niceMax);\n\n return ticks;\n },\n\n /**\n * Generate a set of logarithmic ticks\n * @method Chart.Ticks.generators.logarithmic\n * @param generationOptions {INumericTickGenerationOptions} the options used to generate the ticks\n * @param dataRange {IRange} the range of the data\n * @returns {Array} array of tick values\n */\n logarithmic: function(generationOptions, dataRange) {\n var ticks = [];\n var valueOrDefault = helpers.valueOrDefault;\n\n // Figure out what the max number of ticks we can support it is based on the size of\n // the axis area. For now, we say that the minimum tick spacing in pixels must be 50\n // We also limit the maximum number of ticks to 11 which gives a nice 10 squares on\n // the graph\n var tickVal = valueOrDefault(generationOptions.min, Math.pow(10, Math.floor(helpers.log10(dataRange.min))));\n\n var endExp = Math.floor(helpers.log10(dataRange.max));\n var endSignificand = Math.ceil(dataRange.max / Math.pow(10, endExp));\n var exp, significand;\n\n if (tickVal === 0) {\n exp = Math.floor(helpers.log10(dataRange.minNotZero));\n significand = Math.floor(dataRange.minNotZero / Math.pow(10, exp));\n\n ticks.push(tickVal);\n tickVal = significand * Math.pow(10, exp);\n } else {\n exp = Math.floor(helpers.log10(tickVal));\n significand = Math.floor(tickVal / Math.pow(10, exp));\n }\n\n do {\n ticks.push(tickVal);\n\n ++significand;\n if (significand === 10) {\n significand = 1;\n ++exp;\n }\n\n tickVal = significand * Math.pow(10, exp);\n } while (exp < endExp || (exp === endExp && significand < endSignificand));\n\n var lastTick = valueOrDefault(generationOptions.max, tickVal);\n ticks.push(lastTick);\n\n return ticks;\n }\n },\n\n /**\n * Namespace to hold formatters for different types of ticks\n * @namespace Chart.Ticks.formatters\n */\n formatters: {\n /**\n * Formatter for value labels\n * @method Chart.Ticks.formatters.values\n * @param value the value to display\n * @return {String|Array} the label to display\n */\n values: function(value) {\n return helpers.isArray(value) ? value : '' + value;\n },\n\n /**\n * Formatter for linear numeric ticks\n * @method Chart.Ticks.formatters.linear\n * @param tickValue {Number} the value to be formatted\n * @param index {Number} the position of the tickValue parameter in the ticks array\n * @param ticks {Array} the list of ticks being converted\n * @return {String} string representation of the tickValue parameter\n */\n linear: function(tickValue, index, ticks) {\n // If we have lots of ticks, don't use the ones\n var delta = ticks.length > 3 ? ticks[2] - ticks[1] : ticks[1] - ticks[0];\n\n // If we have a number like 2.5 as the delta, figure out how many decimal places we need\n if (Math.abs(delta) > 1) {\n if (tickValue !== Math.floor(tickValue)) {\n // not an integer\n delta = tickValue - Math.floor(tickValue);\n }\n }\n\n var logDelta = helpers.log10(Math.abs(delta));\n var tickString = '';\n\n if (tickValue !== 0) {\n var numDecimal = -1 * Math.floor(logDelta);\n numDecimal = Math.max(Math.min(numDecimal, 20), 0); // toFixed has a max of 20 decimal places\n tickString = tickValue.toFixed(numDecimal);\n } else {\n tickString = '0'; // never show decimal places for 0\n }\n\n return tickString;\n },\n\n logarithmic: function(tickValue, index, ticks) {\n var remain = tickValue / (Math.pow(10, Math.floor(helpers.log10(tickValue))));\n\n if (tickValue === 0) {\n return '0';\n } else if (remain === 1 || remain === 2 || remain === 5 || index === 0 || index === ticks.length - 1) {\n return tickValue.toExponential();\n }\n return '';\n }\n }\n};\n\n},{\"45\":45}],35:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n tooltips: {\n enabled: true,\n custom: null,\n mode: 'nearest',\n position: 'average',\n intersect: true,\n backgroundColor: 'rgba(0,0,0,0.8)',\n titleFontStyle: 'bold',\n titleSpacing: 2,\n titleMarginBottom: 6,\n titleFontColor: '#fff',\n titleAlign: 'left',\n bodySpacing: 2,\n bodyFontColor: '#fff',\n bodyAlign: 'left',\n footerFontStyle: 'bold',\n footerSpacing: 2,\n footerMarginTop: 6,\n footerFontColor: '#fff',\n footerAlign: 'left',\n yPadding: 6,\n xPadding: 6,\n caretPadding: 2,\n caretSize: 5,\n cornerRadius: 6,\n multiKeyBackground: '#fff',\n displayColors: true,\n borderColor: 'rgba(0,0,0,0)',\n borderWidth: 0,\n callbacks: {\n // Args are: (tooltipItems, data)\n beforeTitle: helpers.noop,\n title: function(tooltipItems, data) {\n // Pick first xLabel for now\n var title = '';\n var labels = data.labels;\n var labelCount = labels ? labels.length : 0;\n\n if (tooltipItems.length > 0) {\n var item = tooltipItems[0];\n\n if (item.xLabel) {\n title = item.xLabel;\n } else if (labelCount > 0 && item.index < labelCount) {\n title = labels[item.index];\n }\n }\n\n return title;\n },\n afterTitle: helpers.noop,\n\n // Args are: (tooltipItems, data)\n beforeBody: helpers.noop,\n\n // Args are: (tooltipItem, data)\n beforeLabel: helpers.noop,\n label: function(tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n label += tooltipItem.yLabel;\n return label;\n },\n labelColor: function(tooltipItem, chart) {\n var meta = chart.getDatasetMeta(tooltipItem.datasetIndex);\n var activeElement = meta.data[tooltipItem.index];\n var view = activeElement._view;\n return {\n borderColor: view.borderColor,\n backgroundColor: view.backgroundColor\n };\n },\n labelTextColor: function() {\n return this._options.bodyFontColor;\n },\n afterLabel: helpers.noop,\n\n // Args are: (tooltipItems, data)\n afterBody: helpers.noop,\n\n // Args are: (tooltipItems, data)\n beforeFooter: helpers.noop,\n footer: helpers.noop,\n afterFooter: helpers.noop\n }\n }\n});\n\nmodule.exports = function(Chart) {\n\n /**\n * Helper method to merge the opacity into a color\n */\n function mergeOpacity(colorString, opacity) {\n var color = helpers.color(colorString);\n return color.alpha(opacity * color.alpha()).rgbaString();\n }\n\n // Helper to push or concat based on if the 2nd parameter is an array or not\n function pushOrConcat(base, toPush) {\n if (toPush) {\n if (helpers.isArray(toPush)) {\n // base = base.concat(toPush);\n Array.prototype.push.apply(base, toPush);\n } else {\n base.push(toPush);\n }\n }\n\n return base;\n }\n\n // Private helper to create a tooltip item model\n // @param element : the chart element (point, arc, bar) to create the tooltip item for\n // @return : new tooltip item\n function createTooltipItem(element) {\n var xScale = element._xScale;\n var yScale = element._yScale || element._scale; // handle radar || polarArea charts\n var index = element._index;\n var datasetIndex = element._datasetIndex;\n\n return {\n xLabel: xScale ? xScale.getLabelForIndex(index, datasetIndex) : '',\n yLabel: yScale ? yScale.getLabelForIndex(index, datasetIndex) : '',\n index: index,\n datasetIndex: datasetIndex,\n x: element._model.x,\n y: element._model.y\n };\n }\n\n /**\n * Helper to get the reset model for the tooltip\n * @param tooltipOpts {Object} the tooltip options\n */\n function getBaseModel(tooltipOpts) {\n var globalDefaults = defaults.global;\n var valueOrDefault = helpers.valueOrDefault;\n\n return {\n // Positioning\n xPadding: tooltipOpts.xPadding,\n yPadding: tooltipOpts.yPadding,\n xAlign: tooltipOpts.xAlign,\n yAlign: tooltipOpts.yAlign,\n\n // Body\n bodyFontColor: tooltipOpts.bodyFontColor,\n _bodyFontFamily: valueOrDefault(tooltipOpts.bodyFontFamily, globalDefaults.defaultFontFamily),\n _bodyFontStyle: valueOrDefault(tooltipOpts.bodyFontStyle, globalDefaults.defaultFontStyle),\n _bodyAlign: tooltipOpts.bodyAlign,\n bodyFontSize: valueOrDefault(tooltipOpts.bodyFontSize, globalDefaults.defaultFontSize),\n bodySpacing: tooltipOpts.bodySpacing,\n\n // Title\n titleFontColor: tooltipOpts.titleFontColor,\n _titleFontFamily: valueOrDefault(tooltipOpts.titleFontFamily, globalDefaults.defaultFontFamily),\n _titleFontStyle: valueOrDefault(tooltipOpts.titleFontStyle, globalDefaults.defaultFontStyle),\n titleFontSize: valueOrDefault(tooltipOpts.titleFontSize, globalDefaults.defaultFontSize),\n _titleAlign: tooltipOpts.titleAlign,\n titleSpacing: tooltipOpts.titleSpacing,\n titleMarginBottom: tooltipOpts.titleMarginBottom,\n\n // Footer\n footerFontColor: tooltipOpts.footerFontColor,\n _footerFontFamily: valueOrDefault(tooltipOpts.footerFontFamily, globalDefaults.defaultFontFamily),\n _footerFontStyle: valueOrDefault(tooltipOpts.footerFontStyle, globalDefaults.defaultFontStyle),\n footerFontSize: valueOrDefault(tooltipOpts.footerFontSize, globalDefaults.defaultFontSize),\n _footerAlign: tooltipOpts.footerAlign,\n footerSpacing: tooltipOpts.footerSpacing,\n footerMarginTop: tooltipOpts.footerMarginTop,\n\n // Appearance\n caretSize: tooltipOpts.caretSize,\n cornerRadius: tooltipOpts.cornerRadius,\n backgroundColor: tooltipOpts.backgroundColor,\n opacity: 0,\n legendColorBackground: tooltipOpts.multiKeyBackground,\n displayColors: tooltipOpts.displayColors,\n borderColor: tooltipOpts.borderColor,\n borderWidth: tooltipOpts.borderWidth\n };\n }\n\n /**\n * Get the size of the tooltip\n */\n function getTooltipSize(tooltip, model) {\n var ctx = tooltip._chart.ctx;\n\n var height = model.yPadding * 2; // Tooltip Padding\n var width = 0;\n\n // Count of all lines in the body\n var body = model.body;\n var combinedBodyLength = body.reduce(function(count, bodyItem) {\n return count + bodyItem.before.length + bodyItem.lines.length + bodyItem.after.length;\n }, 0);\n combinedBodyLength += model.beforeBody.length + model.afterBody.length;\n\n var titleLineCount = model.title.length;\n var footerLineCount = model.footer.length;\n var titleFontSize = model.titleFontSize;\n var bodyFontSize = model.bodyFontSize;\n var footerFontSize = model.footerFontSize;\n\n height += titleLineCount * titleFontSize; // Title Lines\n height += titleLineCount ? (titleLineCount - 1) * model.titleSpacing : 0; // Title Line Spacing\n height += titleLineCount ? model.titleMarginBottom : 0; // Title's bottom Margin\n height += combinedBodyLength * bodyFontSize; // Body Lines\n height += combinedBodyLength ? (combinedBodyLength - 1) * model.bodySpacing : 0; // Body Line Spacing\n height += footerLineCount ? model.footerMarginTop : 0; // Footer Margin\n height += footerLineCount * (footerFontSize); // Footer Lines\n height += footerLineCount ? (footerLineCount - 1) * model.footerSpacing : 0; // Footer Line Spacing\n\n // Title width\n var widthPadding = 0;\n var maxLineWidth = function(line) {\n width = Math.max(width, ctx.measureText(line).width + widthPadding);\n };\n\n ctx.font = helpers.fontString(titleFontSize, model._titleFontStyle, model._titleFontFamily);\n helpers.each(model.title, maxLineWidth);\n\n // Body width\n ctx.font = helpers.fontString(bodyFontSize, model._bodyFontStyle, model._bodyFontFamily);\n helpers.each(model.beforeBody.concat(model.afterBody), maxLineWidth);\n\n // Body lines may include some extra width due to the color box\n widthPadding = model.displayColors ? (bodyFontSize + 2) : 0;\n helpers.each(body, function(bodyItem) {\n helpers.each(bodyItem.before, maxLineWidth);\n helpers.each(bodyItem.lines, maxLineWidth);\n helpers.each(bodyItem.after, maxLineWidth);\n });\n\n // Reset back to 0\n widthPadding = 0;\n\n // Footer width\n ctx.font = helpers.fontString(footerFontSize, model._footerFontStyle, model._footerFontFamily);\n helpers.each(model.footer, maxLineWidth);\n\n // Add padding\n width += 2 * model.xPadding;\n\n return {\n width: width,\n height: height\n };\n }\n\n /**\n * Helper to get the alignment of a tooltip given the size\n */\n function determineAlignment(tooltip, size) {\n var model = tooltip._model;\n var chart = tooltip._chart;\n var chartArea = tooltip._chart.chartArea;\n var xAlign = 'center';\n var yAlign = 'center';\n\n if (model.y < size.height) {\n yAlign = 'top';\n } else if (model.y > (chart.height - size.height)) {\n yAlign = 'bottom';\n }\n\n var lf, rf; // functions to determine left, right alignment\n var olf, orf; // functions to determine if left/right alignment causes tooltip to go outside chart\n var yf; // function to get the y alignment if the tooltip goes outside of the left or right edges\n var midX = (chartArea.left + chartArea.right) / 2;\n var midY = (chartArea.top + chartArea.bottom) / 2;\n\n if (yAlign === 'center') {\n lf = function(x) {\n return x <= midX;\n };\n rf = function(x) {\n return x > midX;\n };\n } else {\n lf = function(x) {\n return x <= (size.width / 2);\n };\n rf = function(x) {\n return x >= (chart.width - (size.width / 2));\n };\n }\n\n olf = function(x) {\n return x + size.width > chart.width;\n };\n orf = function(x) {\n return x - size.width < 0;\n };\n yf = function(y) {\n return y <= midY ? 'top' : 'bottom';\n };\n\n if (lf(model.x)) {\n xAlign = 'left';\n\n // Is tooltip too wide and goes over the right side of the chart.?\n if (olf(model.x)) {\n xAlign = 'center';\n yAlign = yf(model.y);\n }\n } else if (rf(model.x)) {\n xAlign = 'right';\n\n // Is tooltip too wide and goes outside left edge of canvas?\n if (orf(model.x)) {\n xAlign = 'center';\n yAlign = yf(model.y);\n }\n }\n\n var opts = tooltip._options;\n return {\n xAlign: opts.xAlign ? opts.xAlign : xAlign,\n yAlign: opts.yAlign ? opts.yAlign : yAlign\n };\n }\n\n /**\n * @Helper to get the location a tooltip needs to be placed at given the initial position (via the vm) and the size and alignment\n */\n function getBackgroundPoint(vm, size, alignment) {\n // Background Position\n var x = vm.x;\n var y = vm.y;\n\n var caretSize = vm.caretSize;\n var caretPadding = vm.caretPadding;\n var cornerRadius = vm.cornerRadius;\n var xAlign = alignment.xAlign;\n var yAlign = alignment.yAlign;\n var paddingAndSize = caretSize + caretPadding;\n var radiusAndPadding = cornerRadius + caretPadding;\n\n if (xAlign === 'right') {\n x -= size.width;\n } else if (xAlign === 'center') {\n x -= (size.width / 2);\n }\n\n if (yAlign === 'top') {\n y += paddingAndSize;\n } else if (yAlign === 'bottom') {\n y -= size.height + paddingAndSize;\n } else {\n y -= (size.height / 2);\n }\n\n if (yAlign === 'center') {\n if (xAlign === 'left') {\n x += paddingAndSize;\n } else if (xAlign === 'right') {\n x -= paddingAndSize;\n }\n } else if (xAlign === 'left') {\n x -= radiusAndPadding;\n } else if (xAlign === 'right') {\n x += radiusAndPadding;\n }\n\n return {\n x: x,\n y: y\n };\n }\n\n Chart.Tooltip = Element.extend({\n initialize: function() {\n this._model = getBaseModel(this._options);\n this._lastActive = [];\n },\n\n // Get the title\n // Args are: (tooltipItem, data)\n getTitle: function() {\n var me = this;\n var opts = me._options;\n var callbacks = opts.callbacks;\n\n var beforeTitle = callbacks.beforeTitle.apply(me, arguments);\n var title = callbacks.title.apply(me, arguments);\n var afterTitle = callbacks.afterTitle.apply(me, arguments);\n\n var lines = [];\n lines = pushOrConcat(lines, beforeTitle);\n lines = pushOrConcat(lines, title);\n lines = pushOrConcat(lines, afterTitle);\n\n return lines;\n },\n\n // Args are: (tooltipItem, data)\n getBeforeBody: function() {\n var lines = this._options.callbacks.beforeBody.apply(this, arguments);\n return helpers.isArray(lines) ? lines : lines !== undefined ? [lines] : [];\n },\n\n // Args are: (tooltipItem, data)\n getBody: function(tooltipItems, data) {\n var me = this;\n var callbacks = me._options.callbacks;\n var bodyItems = [];\n\n helpers.each(tooltipItems, function(tooltipItem) {\n var bodyItem = {\n before: [],\n lines: [],\n after: []\n };\n pushOrConcat(bodyItem.before, callbacks.beforeLabel.call(me, tooltipItem, data));\n pushOrConcat(bodyItem.lines, callbacks.label.call(me, tooltipItem, data));\n pushOrConcat(bodyItem.after, callbacks.afterLabel.call(me, tooltipItem, data));\n\n bodyItems.push(bodyItem);\n });\n\n return bodyItems;\n },\n\n // Args are: (tooltipItem, data)\n getAfterBody: function() {\n var lines = this._options.callbacks.afterBody.apply(this, arguments);\n return helpers.isArray(lines) ? lines : lines !== undefined ? [lines] : [];\n },\n\n // Get the footer and beforeFooter and afterFooter lines\n // Args are: (tooltipItem, data)\n getFooter: function() {\n var me = this;\n var callbacks = me._options.callbacks;\n\n var beforeFooter = callbacks.beforeFooter.apply(me, arguments);\n var footer = callbacks.footer.apply(me, arguments);\n var afterFooter = callbacks.afterFooter.apply(me, arguments);\n\n var lines = [];\n lines = pushOrConcat(lines, beforeFooter);\n lines = pushOrConcat(lines, footer);\n lines = pushOrConcat(lines, afterFooter);\n\n return lines;\n },\n\n update: function(changed) {\n var me = this;\n var opts = me._options;\n\n // Need to regenerate the model because its faster than using extend and it is necessary due to the optimization in Chart.Element.transition\n // that does _view = _model if ease === 1. This causes the 2nd tooltip update to set properties in both the view and model at the same time\n // which breaks any animations.\n var existingModel = me._model;\n var model = me._model = getBaseModel(opts);\n var active = me._active;\n\n var data = me._data;\n\n // In the case where active.length === 0 we need to keep these at existing values for good animations\n var alignment = {\n xAlign: existingModel.xAlign,\n yAlign: existingModel.yAlign\n };\n var backgroundPoint = {\n x: existingModel.x,\n y: existingModel.y\n };\n var tooltipSize = {\n width: existingModel.width,\n height: existingModel.height\n };\n var tooltipPosition = {\n x: existingModel.caretX,\n y: existingModel.caretY\n };\n\n var i, len;\n\n if (active.length) {\n model.opacity = 1;\n\n var labelColors = [];\n var labelTextColors = [];\n tooltipPosition = Chart.Tooltip.positioners[opts.position].call(me, active, me._eventPosition);\n\n var tooltipItems = [];\n for (i = 0, len = active.length; i < len; ++i) {\n tooltipItems.push(createTooltipItem(active[i]));\n }\n\n // If the user provided a filter function, use it to modify the tooltip items\n if (opts.filter) {\n tooltipItems = tooltipItems.filter(function(a) {\n return opts.filter(a, data);\n });\n }\n\n // If the user provided a sorting function, use it to modify the tooltip items\n if (opts.itemSort) {\n tooltipItems = tooltipItems.sort(function(a, b) {\n return opts.itemSort(a, b, data);\n });\n }\n\n // Determine colors for boxes\n helpers.each(tooltipItems, function(tooltipItem) {\n labelColors.push(opts.callbacks.labelColor.call(me, tooltipItem, me._chart));\n labelTextColors.push(opts.callbacks.labelTextColor.call(me, tooltipItem, me._chart));\n });\n\n\n // Build the Text Lines\n model.title = me.getTitle(tooltipItems, data);\n model.beforeBody = me.getBeforeBody(tooltipItems, data);\n model.body = me.getBody(tooltipItems, data);\n model.afterBody = me.getAfterBody(tooltipItems, data);\n model.footer = me.getFooter(tooltipItems, data);\n\n // Initial positioning and colors\n model.x = Math.round(tooltipPosition.x);\n model.y = Math.round(tooltipPosition.y);\n model.caretPadding = opts.caretPadding;\n model.labelColors = labelColors;\n model.labelTextColors = labelTextColors;\n\n // data points\n model.dataPoints = tooltipItems;\n\n // We need to determine alignment of the tooltip\n tooltipSize = getTooltipSize(this, model);\n alignment = determineAlignment(this, tooltipSize);\n // Final Size and Position\n backgroundPoint = getBackgroundPoint(model, tooltipSize, alignment);\n } else {\n model.opacity = 0;\n }\n\n model.xAlign = alignment.xAlign;\n model.yAlign = alignment.yAlign;\n model.x = backgroundPoint.x;\n model.y = backgroundPoint.y;\n model.width = tooltipSize.width;\n model.height = tooltipSize.height;\n\n // Point where the caret on the tooltip points to\n model.caretX = tooltipPosition.x;\n model.caretY = tooltipPosition.y;\n\n me._model = model;\n\n if (changed && opts.custom) {\n opts.custom.call(me, model);\n }\n\n return me;\n },\n drawCaret: function(tooltipPoint, size) {\n var ctx = this._chart.ctx;\n var vm = this._view;\n var caretPosition = this.getCaretPosition(tooltipPoint, size, vm);\n\n ctx.lineTo(caretPosition.x1, caretPosition.y1);\n ctx.lineTo(caretPosition.x2, caretPosition.y2);\n ctx.lineTo(caretPosition.x3, caretPosition.y3);\n },\n getCaretPosition: function(tooltipPoint, size, vm) {\n var x1, x2, x3, y1, y2, y3;\n var caretSize = vm.caretSize;\n var cornerRadius = vm.cornerRadius;\n var xAlign = vm.xAlign;\n var yAlign = vm.yAlign;\n var ptX = tooltipPoint.x;\n var ptY = tooltipPoint.y;\n var width = size.width;\n var height = size.height;\n\n if (yAlign === 'center') {\n y2 = ptY + (height / 2);\n\n if (xAlign === 'left') {\n x1 = ptX;\n x2 = x1 - caretSize;\n x3 = x1;\n\n y1 = y2 + caretSize;\n y3 = y2 - caretSize;\n } else {\n x1 = ptX + width;\n x2 = x1 + caretSize;\n x3 = x1;\n\n y1 = y2 - caretSize;\n y3 = y2 + caretSize;\n }\n } else {\n if (xAlign === 'left') {\n x2 = ptX + cornerRadius + (caretSize);\n x1 = x2 - caretSize;\n x3 = x2 + caretSize;\n } else if (xAlign === 'right') {\n x2 = ptX + width - cornerRadius - caretSize;\n x1 = x2 - caretSize;\n x3 = x2 + caretSize;\n } else {\n x2 = ptX + (width / 2);\n x1 = x2 - caretSize;\n x3 = x2 + caretSize;\n }\n if (yAlign === 'top') {\n y1 = ptY;\n y2 = y1 - caretSize;\n y3 = y1;\n } else {\n y1 = ptY + height;\n y2 = y1 + caretSize;\n y3 = y1;\n // invert drawing order\n var tmp = x3;\n x3 = x1;\n x1 = tmp;\n }\n }\n return {x1: x1, x2: x2, x3: x3, y1: y1, y2: y2, y3: y3};\n },\n drawTitle: function(pt, vm, ctx, opacity) {\n var title = vm.title;\n\n if (title.length) {\n ctx.textAlign = vm._titleAlign;\n ctx.textBaseline = 'top';\n\n var titleFontSize = vm.titleFontSize;\n var titleSpacing = vm.titleSpacing;\n\n ctx.fillStyle = mergeOpacity(vm.titleFontColor, opacity);\n ctx.font = helpers.fontString(titleFontSize, vm._titleFontStyle, vm._titleFontFamily);\n\n var i, len;\n for (i = 0, len = title.length; i < len; ++i) {\n ctx.fillText(title[i], pt.x, pt.y);\n pt.y += titleFontSize + titleSpacing; // Line Height and spacing\n\n if (i + 1 === title.length) {\n pt.y += vm.titleMarginBottom - titleSpacing; // If Last, add margin, remove spacing\n }\n }\n }\n },\n drawBody: function(pt, vm, ctx, opacity) {\n var bodyFontSize = vm.bodyFontSize;\n var bodySpacing = vm.bodySpacing;\n var body = vm.body;\n\n ctx.textAlign = vm._bodyAlign;\n ctx.textBaseline = 'top';\n ctx.font = helpers.fontString(bodyFontSize, vm._bodyFontStyle, vm._bodyFontFamily);\n\n // Before Body\n var xLinePadding = 0;\n var fillLineOfText = function(line) {\n ctx.fillText(line, pt.x + xLinePadding, pt.y);\n pt.y += bodyFontSize + bodySpacing;\n };\n\n // Before body lines\n ctx.fillStyle = mergeOpacity(vm.bodyFontColor, opacity);\n helpers.each(vm.beforeBody, fillLineOfText);\n\n var drawColorBoxes = vm.displayColors;\n xLinePadding = drawColorBoxes ? (bodyFontSize + 2) : 0;\n\n // Draw body lines now\n helpers.each(body, function(bodyItem, i) {\n var textColor = mergeOpacity(vm.labelTextColors[i], opacity);\n ctx.fillStyle = textColor;\n helpers.each(bodyItem.before, fillLineOfText);\n\n helpers.each(bodyItem.lines, function(line) {\n // Draw Legend-like boxes if needed\n if (drawColorBoxes) {\n // Fill a white rect so that colours merge nicely if the opacity is < 1\n ctx.fillStyle = mergeOpacity(vm.legendColorBackground, opacity);\n ctx.fillRect(pt.x, pt.y, bodyFontSize, bodyFontSize);\n\n // Border\n ctx.lineWidth = 1;\n ctx.strokeStyle = mergeOpacity(vm.labelColors[i].borderColor, opacity);\n ctx.strokeRect(pt.x, pt.y, bodyFontSize, bodyFontSize);\n\n // Inner square\n ctx.fillStyle = mergeOpacity(vm.labelColors[i].backgroundColor, opacity);\n ctx.fillRect(pt.x + 1, pt.y + 1, bodyFontSize - 2, bodyFontSize - 2);\n ctx.fillStyle = textColor;\n }\n\n fillLineOfText(line);\n });\n\n helpers.each(bodyItem.after, fillLineOfText);\n });\n\n // Reset back to 0 for after body\n xLinePadding = 0;\n\n // After body lines\n helpers.each(vm.afterBody, fillLineOfText);\n pt.y -= bodySpacing; // Remove last body spacing\n },\n drawFooter: function(pt, vm, ctx, opacity) {\n var footer = vm.footer;\n\n if (footer.length) {\n pt.y += vm.footerMarginTop;\n\n ctx.textAlign = vm._footerAlign;\n ctx.textBaseline = 'top';\n\n ctx.fillStyle = mergeOpacity(vm.footerFontColor, opacity);\n ctx.font = helpers.fontString(vm.footerFontSize, vm._footerFontStyle, vm._footerFontFamily);\n\n helpers.each(footer, function(line) {\n ctx.fillText(line, pt.x, pt.y);\n pt.y += vm.footerFontSize + vm.footerSpacing;\n });\n }\n },\n drawBackground: function(pt, vm, ctx, tooltipSize, opacity) {\n ctx.fillStyle = mergeOpacity(vm.backgroundColor, opacity);\n ctx.strokeStyle = mergeOpacity(vm.borderColor, opacity);\n ctx.lineWidth = vm.borderWidth;\n var xAlign = vm.xAlign;\n var yAlign = vm.yAlign;\n var x = pt.x;\n var y = pt.y;\n var width = tooltipSize.width;\n var height = tooltipSize.height;\n var radius = vm.cornerRadius;\n\n ctx.beginPath();\n ctx.moveTo(x + radius, y);\n if (yAlign === 'top') {\n this.drawCaret(pt, tooltipSize);\n }\n ctx.lineTo(x + width - radius, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + radius);\n if (yAlign === 'center' && xAlign === 'right') {\n this.drawCaret(pt, tooltipSize);\n }\n ctx.lineTo(x + width, y + height - radius);\n ctx.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n if (yAlign === 'bottom') {\n this.drawCaret(pt, tooltipSize);\n }\n ctx.lineTo(x + radius, y + height);\n ctx.quadraticCurveTo(x, y + height, x, y + height - radius);\n if (yAlign === 'center' && xAlign === 'left') {\n this.drawCaret(pt, tooltipSize);\n }\n ctx.lineTo(x, y + radius);\n ctx.quadraticCurveTo(x, y, x + radius, y);\n ctx.closePath();\n\n ctx.fill();\n\n if (vm.borderWidth > 0) {\n ctx.stroke();\n }\n },\n draw: function() {\n var ctx = this._chart.ctx;\n var vm = this._view;\n\n if (vm.opacity === 0) {\n return;\n }\n\n var tooltipSize = {\n width: vm.width,\n height: vm.height\n };\n var pt = {\n x: vm.x,\n y: vm.y\n };\n\n // IE11/Edge does not like very small opacities, so snap to 0\n var opacity = Math.abs(vm.opacity < 1e-3) ? 0 : vm.opacity;\n\n // Truthy/falsey value for empty tooltip\n var hasTooltipContent = vm.title.length || vm.beforeBody.length || vm.body.length || vm.afterBody.length || vm.footer.length;\n\n if (this._options.enabled && hasTooltipContent) {\n // Draw Background\n this.drawBackground(pt, vm, ctx, tooltipSize, opacity);\n\n // Draw Title, Body, and Footer\n pt.x += vm.xPadding;\n pt.y += vm.yPadding;\n\n // Titles\n this.drawTitle(pt, vm, ctx, opacity);\n\n // Body\n this.drawBody(pt, vm, ctx, opacity);\n\n // Footer\n this.drawFooter(pt, vm, ctx, opacity);\n }\n },\n\n /**\n * Handle an event\n * @private\n * @param {IEvent} event - The event to handle\n * @returns {Boolean} true if the tooltip changed\n */\n handleEvent: function(e) {\n var me = this;\n var options = me._options;\n var changed = false;\n\n me._lastActive = me._lastActive || [];\n\n // Find Active Elements for tooltips\n if (e.type === 'mouseout') {\n me._active = [];\n } else {\n me._active = me._chart.getElementsAtEventForMode(e, options.mode, options);\n }\n\n // Remember Last Actives\n changed = !helpers.arrayEquals(me._active, me._lastActive);\n\n // If tooltip didn't change, do not handle the target event\n if (!changed) {\n return false;\n }\n\n me._lastActive = me._active;\n\n if (options.enabled || options.custom) {\n me._eventPosition = {\n x: e.x,\n y: e.y\n };\n\n var model = me._model;\n me.update(true);\n me.pivot();\n\n // See if our tooltip position changed\n changed |= (model.x !== me._model.x) || (model.y !== me._model.y);\n }\n\n return changed;\n }\n });\n\n /**\n * @namespace Chart.Tooltip.positioners\n */\n Chart.Tooltip.positioners = {\n /**\n * Average mode places the tooltip at the average position of the elements shown\n * @function Chart.Tooltip.positioners.average\n * @param elements {ChartElement[]} the elements being displayed in the tooltip\n * @returns {Point} tooltip position\n */\n average: function(elements) {\n if (!elements.length) {\n return false;\n }\n\n var i, len;\n var x = 0;\n var y = 0;\n var count = 0;\n\n for (i = 0, len = elements.length; i < len; ++i) {\n var el = elements[i];\n if (el && el.hasValue()) {\n var pos = el.tooltipPosition();\n x += pos.x;\n y += pos.y;\n ++count;\n }\n }\n\n return {\n x: Math.round(x / count),\n y: Math.round(y / count)\n };\n },\n\n /**\n * Gets the tooltip position nearest of the item nearest to the event position\n * @function Chart.Tooltip.positioners.nearest\n * @param elements {Chart.Element[]} the tooltip elements\n * @param eventPosition {Point} the position of the event in canvas coordinates\n * @returns {Point} the tooltip position\n */\n nearest: function(elements, eventPosition) {\n var x = eventPosition.x;\n var y = eventPosition.y;\n var minDistance = Number.POSITIVE_INFINITY;\n var i, len, nearestElement;\n\n for (i = 0, len = elements.length; i < len; ++i) {\n var el = elements[i];\n if (el && el.hasValue()) {\n var center = el.getCenterPoint();\n var d = helpers.distanceBetweenPoints(eventPosition, center);\n\n if (d < minDistance) {\n minDistance = d;\n nearestElement = el;\n }\n }\n }\n\n if (nearestElement) {\n var tp = nearestElement.tooltipPosition();\n x = tp.x;\n y = tp.y;\n }\n\n return {\n x: x,\n y: y\n };\n }\n };\n};\n\n},{\"25\":25,\"26\":26,\"45\":45}],36:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n elements: {\n arc: {\n backgroundColor: defaults.global.defaultColor,\n borderColor: '#fff',\n borderWidth: 2\n }\n }\n});\n\nmodule.exports = Element.extend({\n inLabelRange: function(mouseX) {\n var vm = this._view;\n\n if (vm) {\n return (Math.pow(mouseX - vm.x, 2) < Math.pow(vm.radius + vm.hoverRadius, 2));\n }\n return false;\n },\n\n inRange: function(chartX, chartY) {\n var vm = this._view;\n\n if (vm) {\n var pointRelativePosition = helpers.getAngleFromPoint(vm, {x: chartX, y: chartY});\n var angle = pointRelativePosition.angle;\n var distance = pointRelativePosition.distance;\n\n // Sanitise angle range\n var startAngle = vm.startAngle;\n var endAngle = vm.endAngle;\n while (endAngle < startAngle) {\n endAngle += 2.0 * Math.PI;\n }\n while (angle > endAngle) {\n angle -= 2.0 * Math.PI;\n }\n while (angle < startAngle) {\n angle += 2.0 * Math.PI;\n }\n\n // Check if within the range of the open/close angle\n var betweenAngles = (angle >= startAngle && angle <= endAngle);\n var withinRadius = (distance >= vm.innerRadius && distance <= vm.outerRadius);\n\n return (betweenAngles && withinRadius);\n }\n return false;\n },\n\n getCenterPoint: function() {\n var vm = this._view;\n var halfAngle = (vm.startAngle + vm.endAngle) / 2;\n var halfRadius = (vm.innerRadius + vm.outerRadius) / 2;\n return {\n x: vm.x + Math.cos(halfAngle) * halfRadius,\n y: vm.y + Math.sin(halfAngle) * halfRadius\n };\n },\n\n getArea: function() {\n var vm = this._view;\n return Math.PI * ((vm.endAngle - vm.startAngle) / (2 * Math.PI)) * (Math.pow(vm.outerRadius, 2) - Math.pow(vm.innerRadius, 2));\n },\n\n tooltipPosition: function() {\n var vm = this._view;\n var centreAngle = vm.startAngle + ((vm.endAngle - vm.startAngle) / 2);\n var rangeFromCentre = (vm.outerRadius - vm.innerRadius) / 2 + vm.innerRadius;\n\n return {\n x: vm.x + (Math.cos(centreAngle) * rangeFromCentre),\n y: vm.y + (Math.sin(centreAngle) * rangeFromCentre)\n };\n },\n\n draw: function() {\n var ctx = this._chart.ctx;\n var vm = this._view;\n var sA = vm.startAngle;\n var eA = vm.endAngle;\n\n ctx.beginPath();\n\n ctx.arc(vm.x, vm.y, vm.outerRadius, sA, eA);\n ctx.arc(vm.x, vm.y, vm.innerRadius, eA, sA, true);\n\n ctx.closePath();\n ctx.strokeStyle = vm.borderColor;\n ctx.lineWidth = vm.borderWidth;\n\n ctx.fillStyle = vm.backgroundColor;\n\n ctx.fill();\n ctx.lineJoin = 'bevel';\n\n if (vm.borderWidth) {\n ctx.stroke();\n }\n }\n});\n\n},{\"25\":25,\"26\":26,\"45\":45}],37:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\nvar globalDefaults = defaults.global;\n\ndefaults._set('global', {\n elements: {\n line: {\n tension: 0.4,\n backgroundColor: globalDefaults.defaultColor,\n borderWidth: 3,\n borderColor: globalDefaults.defaultColor,\n borderCapStyle: 'butt',\n borderDash: [],\n borderDashOffset: 0.0,\n borderJoinStyle: 'miter',\n capBezierPoints: true,\n fill: true, // do we fill in the area between the line and its base axis\n }\n }\n});\n\nmodule.exports = Element.extend({\n draw: function() {\n var me = this;\n var vm = me._view;\n var ctx = me._chart.ctx;\n var spanGaps = vm.spanGaps;\n var points = me._children.slice(); // clone array\n var globalOptionLineElements = globalDefaults.elements.line;\n var lastDrawnIndex = -1;\n var index, current, previous, currentVM;\n\n // If we are looping, adding the first point again\n if (me._loop && points.length) {\n points.push(points[0]);\n }\n\n ctx.save();\n\n // Stroke Line Options\n ctx.lineCap = vm.borderCapStyle || globalOptionLineElements.borderCapStyle;\n\n // IE 9 and 10 do not support line dash\n if (ctx.setLineDash) {\n ctx.setLineDash(vm.borderDash || globalOptionLineElements.borderDash);\n }\n\n ctx.lineDashOffset = vm.borderDashOffset || globalOptionLineElements.borderDashOffset;\n ctx.lineJoin = vm.borderJoinStyle || globalOptionLineElements.borderJoinStyle;\n ctx.lineWidth = vm.borderWidth || globalOptionLineElements.borderWidth;\n ctx.strokeStyle = vm.borderColor || globalDefaults.defaultColor;\n\n // Stroke Line\n ctx.beginPath();\n lastDrawnIndex = -1;\n\n for (index = 0; index < points.length; ++index) {\n current = points[index];\n previous = helpers.previousItem(points, index);\n currentVM = current._view;\n\n // First point moves to it's starting position no matter what\n if (index === 0) {\n if (!currentVM.skip) {\n ctx.moveTo(currentVM.x, currentVM.y);\n lastDrawnIndex = index;\n }\n } else {\n previous = lastDrawnIndex === -1 ? previous : points[lastDrawnIndex];\n\n if (!currentVM.skip) {\n if ((lastDrawnIndex !== (index - 1) && !spanGaps) || lastDrawnIndex === -1) {\n // There was a gap and this is the first point after the gap\n ctx.moveTo(currentVM.x, currentVM.y);\n } else {\n // Line to next point\n helpers.canvas.lineTo(ctx, previous._view, current._view);\n }\n lastDrawnIndex = index;\n }\n }\n }\n\n ctx.stroke();\n ctx.restore();\n }\n});\n\n},{\"25\":25,\"26\":26,\"45\":45}],38:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\nvar defaultColor = defaults.global.defaultColor;\n\ndefaults._set('global', {\n elements: {\n point: {\n radius: 3,\n pointStyle: 'circle',\n backgroundColor: defaultColor,\n borderColor: defaultColor,\n borderWidth: 1,\n // Hover\n hitRadius: 1,\n hoverRadius: 4,\n hoverBorderWidth: 1\n }\n }\n});\n\nfunction xRange(mouseX) {\n var vm = this._view;\n return vm ? (Math.pow(mouseX - vm.x, 2) < Math.pow(vm.radius + vm.hitRadius, 2)) : false;\n}\n\nfunction yRange(mouseY) {\n var vm = this._view;\n return vm ? (Math.pow(mouseY - vm.y, 2) < Math.pow(vm.radius + vm.hitRadius, 2)) : false;\n}\n\nmodule.exports = Element.extend({\n inRange: function(mouseX, mouseY) {\n var vm = this._view;\n return vm ? ((Math.pow(mouseX - vm.x, 2) + Math.pow(mouseY - vm.y, 2)) < Math.pow(vm.hitRadius + vm.radius, 2)) : false;\n },\n\n inLabelRange: xRange,\n inXRange: xRange,\n inYRange: yRange,\n\n getCenterPoint: function() {\n var vm = this._view;\n return {\n x: vm.x,\n y: vm.y\n };\n },\n\n getArea: function() {\n return Math.PI * Math.pow(this._view.radius, 2);\n },\n\n tooltipPosition: function() {\n var vm = this._view;\n return {\n x: vm.x,\n y: vm.y,\n padding: vm.radius + vm.borderWidth\n };\n },\n\n draw: function(chartArea) {\n var vm = this._view;\n var model = this._model;\n var ctx = this._chart.ctx;\n var pointStyle = vm.pointStyle;\n var radius = vm.radius;\n var x = vm.x;\n var y = vm.y;\n var color = helpers.color;\n var errMargin = 1.01; // 1.01 is margin for Accumulated error. (Especially Edge, IE.)\n var ratio = 0;\n\n if (vm.skip) {\n return;\n }\n\n ctx.strokeStyle = vm.borderColor || defaultColor;\n ctx.lineWidth = helpers.valueOrDefault(vm.borderWidth, defaults.global.elements.point.borderWidth);\n ctx.fillStyle = vm.backgroundColor || defaultColor;\n\n // Cliping for Points.\n // going out from inner charArea?\n if ((chartArea !== undefined) && ((model.x < chartArea.left) || (chartArea.right * errMargin < model.x) || (model.y < chartArea.top) || (chartArea.bottom * errMargin < model.y))) {\n // Point fade out\n if (model.x < chartArea.left) {\n ratio = (x - model.x) / (chartArea.left - model.x);\n } else if (chartArea.right * errMargin < model.x) {\n ratio = (model.x - x) / (model.x - chartArea.right);\n } else if (model.y < chartArea.top) {\n ratio = (y - model.y) / (chartArea.top - model.y);\n } else if (chartArea.bottom * errMargin < model.y) {\n ratio = (model.y - y) / (model.y - chartArea.bottom);\n }\n ratio = Math.round(ratio * 100) / 100;\n ctx.strokeStyle = color(ctx.strokeStyle).alpha(ratio).rgbString();\n ctx.fillStyle = color(ctx.fillStyle).alpha(ratio).rgbString();\n }\n\n helpers.canvas.drawPoint(ctx, pointStyle, radius, x, y);\n }\n});\n\n},{\"25\":25,\"26\":26,\"45\":45}],39:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\n\ndefaults._set('global', {\n elements: {\n rectangle: {\n backgroundColor: defaults.global.defaultColor,\n borderColor: defaults.global.defaultColor,\n borderSkipped: 'bottom',\n borderWidth: 0\n }\n }\n});\n\nfunction isVertical(bar) {\n return bar._view.width !== undefined;\n}\n\n/**\n * Helper function to get the bounds of the bar regardless of the orientation\n * @param bar {Chart.Element.Rectangle} the bar\n * @return {Bounds} bounds of the bar\n * @private\n */\nfunction getBarBounds(bar) {\n var vm = bar._view;\n var x1, x2, y1, y2;\n\n if (isVertical(bar)) {\n // vertical\n var halfWidth = vm.width / 2;\n x1 = vm.x - halfWidth;\n x2 = vm.x + halfWidth;\n y1 = Math.min(vm.y, vm.base);\n y2 = Math.max(vm.y, vm.base);\n } else {\n // horizontal bar\n var halfHeight = vm.height / 2;\n x1 = Math.min(vm.x, vm.base);\n x2 = Math.max(vm.x, vm.base);\n y1 = vm.y - halfHeight;\n y2 = vm.y + halfHeight;\n }\n\n return {\n left: x1,\n top: y1,\n right: x2,\n bottom: y2\n };\n}\n\nmodule.exports = Element.extend({\n draw: function() {\n var ctx = this._chart.ctx;\n var vm = this._view;\n var left, right, top, bottom, signX, signY, borderSkipped;\n var borderWidth = vm.borderWidth;\n\n if (!vm.horizontal) {\n // bar\n left = vm.x - vm.width / 2;\n right = vm.x + vm.width / 2;\n top = vm.y;\n bottom = vm.base;\n signX = 1;\n signY = bottom > top ? 1 : -1;\n borderSkipped = vm.borderSkipped || 'bottom';\n } else {\n // horizontal bar\n left = vm.base;\n right = vm.x;\n top = vm.y - vm.height / 2;\n bottom = vm.y + vm.height / 2;\n signX = right > left ? 1 : -1;\n signY = 1;\n borderSkipped = vm.borderSkipped || 'left';\n }\n\n // Canvas doesn't allow us to stroke inside the width so we can\n // adjust the sizes to fit if we're setting a stroke on the line\n if (borderWidth) {\n // borderWidth shold be less than bar width and bar height.\n var barSize = Math.min(Math.abs(left - right), Math.abs(top - bottom));\n borderWidth = borderWidth > barSize ? barSize : borderWidth;\n var halfStroke = borderWidth / 2;\n // Adjust borderWidth when bar top position is near vm.base(zero).\n var borderLeft = left + (borderSkipped !== 'left' ? halfStroke * signX : 0);\n var borderRight = right + (borderSkipped !== 'right' ? -halfStroke * signX : 0);\n var borderTop = top + (borderSkipped !== 'top' ? halfStroke * signY : 0);\n var borderBottom = bottom + (borderSkipped !== 'bottom' ? -halfStroke * signY : 0);\n // not become a vertical line?\n if (borderLeft !== borderRight) {\n top = borderTop;\n bottom = borderBottom;\n }\n // not become a horizontal line?\n if (borderTop !== borderBottom) {\n left = borderLeft;\n right = borderRight;\n }\n }\n\n ctx.beginPath();\n ctx.fillStyle = vm.backgroundColor;\n ctx.strokeStyle = vm.borderColor;\n ctx.lineWidth = borderWidth;\n\n // Corner points, from bottom-left to bottom-right clockwise\n // | 1 2 |\n // | 0 3 |\n var corners = [\n [left, bottom],\n [left, top],\n [right, top],\n [right, bottom]\n ];\n\n // Find first (starting) corner with fallback to 'bottom'\n var borders = ['bottom', 'left', 'top', 'right'];\n var startCorner = borders.indexOf(borderSkipped, 0);\n if (startCorner === -1) {\n startCorner = 0;\n }\n\n function cornerAt(index) {\n return corners[(startCorner + index) % 4];\n }\n\n // Draw rectangle from 'startCorner'\n var corner = cornerAt(0);\n ctx.moveTo(corner[0], corner[1]);\n\n for (var i = 1; i < 4; i++) {\n corner = cornerAt(i);\n ctx.lineTo(corner[0], corner[1]);\n }\n\n ctx.fill();\n if (borderWidth) {\n ctx.stroke();\n }\n },\n\n height: function() {\n var vm = this._view;\n return vm.base - vm.y;\n },\n\n inRange: function(mouseX, mouseY) {\n var inRange = false;\n\n if (this._view) {\n var bounds = getBarBounds(this);\n inRange = mouseX >= bounds.left && mouseX <= bounds.right && mouseY >= bounds.top && mouseY <= bounds.bottom;\n }\n\n return inRange;\n },\n\n inLabelRange: function(mouseX, mouseY) {\n var me = this;\n if (!me._view) {\n return false;\n }\n\n var inRange = false;\n var bounds = getBarBounds(me);\n\n if (isVertical(me)) {\n inRange = mouseX >= bounds.left && mouseX <= bounds.right;\n } else {\n inRange = mouseY >= bounds.top && mouseY <= bounds.bottom;\n }\n\n return inRange;\n },\n\n inXRange: function(mouseX) {\n var bounds = getBarBounds(this);\n return mouseX >= bounds.left && mouseX <= bounds.right;\n },\n\n inYRange: function(mouseY) {\n var bounds = getBarBounds(this);\n return mouseY >= bounds.top && mouseY <= bounds.bottom;\n },\n\n getCenterPoint: function() {\n var vm = this._view;\n var x, y;\n if (isVertical(this)) {\n x = vm.x;\n y = (vm.y + vm.base) / 2;\n } else {\n x = (vm.x + vm.base) / 2;\n y = vm.y;\n }\n\n return {x: x, y: y};\n },\n\n getArea: function() {\n var vm = this._view;\n return vm.width * Math.abs(vm.y - vm.base);\n },\n\n tooltipPosition: function() {\n var vm = this._view;\n return {\n x: vm.x,\n y: vm.y\n };\n }\n});\n\n},{\"25\":25,\"26\":26}],40:[function(require,module,exports){\n'use strict';\n\nmodule.exports = {};\nmodule.exports.Arc = require(36);\nmodule.exports.Line = require(37);\nmodule.exports.Point = require(38);\nmodule.exports.Rectangle = require(39);\n\n},{\"36\":36,\"37\":37,\"38\":38,\"39\":39}],41:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(42);\n\n/**\n * @namespace Chart.helpers.canvas\n */\nvar exports = module.exports = {\n /**\n * Clears the entire canvas associated to the given `chart`.\n * @param {Chart} chart - The chart for which to clear the canvas.\n */\n clear: function(chart) {\n chart.ctx.clearRect(0, 0, chart.width, chart.height);\n },\n\n /**\n * Creates a \"path\" for a rectangle with rounded corners at position (x, y) with a\n * given size (width, height) and the same `radius` for all corners.\n * @param {CanvasRenderingContext2D} ctx - The canvas 2D Context.\n * @param {Number} x - The x axis of the coordinate for the rectangle starting point.\n * @param {Number} y - The y axis of the coordinate for the rectangle starting point.\n * @param {Number} width - The rectangle's width.\n * @param {Number} height - The rectangle's height.\n * @param {Number} radius - The rounded amount (in pixels) for the four corners.\n * @todo handle `radius` as top-left, top-right, bottom-right, bottom-left array/object?\n */\n roundedRect: function(ctx, x, y, width, height, radius) {\n if (radius) {\n var rx = Math.min(radius, width / 2);\n var ry = Math.min(radius, height / 2);\n\n ctx.moveTo(x + rx, y);\n ctx.lineTo(x + width - rx, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + ry);\n ctx.lineTo(x + width, y + height - ry);\n ctx.quadraticCurveTo(x + width, y + height, x + width - rx, y + height);\n ctx.lineTo(x + rx, y + height);\n ctx.quadraticCurveTo(x, y + height, x, y + height - ry);\n ctx.lineTo(x, y + ry);\n ctx.quadraticCurveTo(x, y, x + rx, y);\n } else {\n ctx.rect(x, y, width, height);\n }\n },\n\n drawPoint: function(ctx, style, radius, x, y) {\n var type, edgeLength, xOffset, yOffset, height, size;\n\n if (style && typeof style === 'object') {\n type = style.toString();\n if (type === '[object HTMLImageElement]' || type === '[object HTMLCanvasElement]') {\n ctx.drawImage(style, x - style.width / 2, y - style.height / 2, style.width, style.height);\n return;\n }\n }\n\n if (isNaN(radius) || radius <= 0) {\n return;\n }\n\n switch (style) {\n // Default includes circle\n default:\n ctx.beginPath();\n ctx.arc(x, y, radius, 0, Math.PI * 2);\n ctx.closePath();\n ctx.fill();\n break;\n case 'triangle':\n ctx.beginPath();\n edgeLength = 3 * radius / Math.sqrt(3);\n height = edgeLength * Math.sqrt(3) / 2;\n ctx.moveTo(x - edgeLength / 2, y + height / 3);\n ctx.lineTo(x + edgeLength / 2, y + height / 3);\n ctx.lineTo(x, y - 2 * height / 3);\n ctx.closePath();\n ctx.fill();\n break;\n case 'rect':\n size = 1 / Math.SQRT2 * radius;\n ctx.beginPath();\n ctx.fillRect(x - size, y - size, 2 * size, 2 * size);\n ctx.strokeRect(x - size, y - size, 2 * size, 2 * size);\n break;\n case 'rectRounded':\n var offset = radius / Math.SQRT2;\n var leftX = x - offset;\n var topY = y - offset;\n var sideSize = Math.SQRT2 * radius;\n ctx.beginPath();\n this.roundedRect(ctx, leftX, topY, sideSize, sideSize, radius / 2);\n ctx.closePath();\n ctx.fill();\n break;\n case 'rectRot':\n size = 1 / Math.SQRT2 * radius;\n ctx.beginPath();\n ctx.moveTo(x - size, y);\n ctx.lineTo(x, y + size);\n ctx.lineTo(x + size, y);\n ctx.lineTo(x, y - size);\n ctx.closePath();\n ctx.fill();\n break;\n case 'cross':\n ctx.beginPath();\n ctx.moveTo(x, y + radius);\n ctx.lineTo(x, y - radius);\n ctx.moveTo(x - radius, y);\n ctx.lineTo(x + radius, y);\n ctx.closePath();\n break;\n case 'crossRot':\n ctx.beginPath();\n xOffset = Math.cos(Math.PI / 4) * radius;\n yOffset = Math.sin(Math.PI / 4) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x - xOffset, y + yOffset);\n ctx.lineTo(x + xOffset, y - yOffset);\n ctx.closePath();\n break;\n case 'star':\n ctx.beginPath();\n ctx.moveTo(x, y + radius);\n ctx.lineTo(x, y - radius);\n ctx.moveTo(x - radius, y);\n ctx.lineTo(x + radius, y);\n xOffset = Math.cos(Math.PI / 4) * radius;\n yOffset = Math.sin(Math.PI / 4) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x - xOffset, y + yOffset);\n ctx.lineTo(x + xOffset, y - yOffset);\n ctx.closePath();\n break;\n case 'line':\n ctx.beginPath();\n ctx.moveTo(x - radius, y);\n ctx.lineTo(x + radius, y);\n ctx.closePath();\n break;\n case 'dash':\n ctx.beginPath();\n ctx.moveTo(x, y);\n ctx.lineTo(x + radius, y);\n ctx.closePath();\n break;\n }\n\n ctx.stroke();\n },\n\n clipArea: function(ctx, area) {\n ctx.save();\n ctx.beginPath();\n ctx.rect(area.left, area.top, area.right - area.left, area.bottom - area.top);\n ctx.clip();\n },\n\n unclipArea: function(ctx) {\n ctx.restore();\n },\n\n lineTo: function(ctx, previous, target, flip) {\n if (target.steppedLine) {\n if ((target.steppedLine === 'after' && !flip) || (target.steppedLine !== 'after' && flip)) {\n ctx.lineTo(previous.x, target.y);\n } else {\n ctx.lineTo(target.x, previous.y);\n }\n ctx.lineTo(target.x, target.y);\n return;\n }\n\n if (!target.tension) {\n ctx.lineTo(target.x, target.y);\n return;\n }\n\n ctx.bezierCurveTo(\n flip ? previous.controlPointPreviousX : previous.controlPointNextX,\n flip ? previous.controlPointPreviousY : previous.controlPointNextY,\n flip ? target.controlPointNextX : target.controlPointPreviousX,\n flip ? target.controlPointNextY : target.controlPointPreviousY,\n target.x,\n target.y);\n }\n};\n\n// DEPRECATIONS\n\n/**\n * Provided for backward compatibility, use Chart.helpers.canvas.clear instead.\n * @namespace Chart.helpers.clear\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.clear = exports.clear;\n\n/**\n * Provided for backward compatibility, use Chart.helpers.canvas.roundedRect instead.\n * @namespace Chart.helpers.drawRoundedRectangle\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.drawRoundedRectangle = function(ctx) {\n ctx.beginPath();\n exports.roundedRect.apply(exports, arguments);\n ctx.closePath();\n};\n\n},{\"42\":42}],42:[function(require,module,exports){\n'use strict';\n\n/**\n * @namespace Chart.helpers\n */\nvar helpers = {\n /**\n * An empty function that can be used, for example, for optional callback.\n */\n noop: function() {},\n\n /**\n * Returns a unique id, sequentially generated from a global variable.\n * @returns {Number}\n * @function\n */\n uid: (function() {\n var id = 0;\n return function() {\n return id++;\n };\n }()),\n\n /**\n * Returns true if `value` is neither null nor undefined, else returns false.\n * @param {*} value - The value to test.\n * @returns {Boolean}\n * @since 2.7.0\n */\n isNullOrUndef: function(value) {\n return value === null || typeof value === 'undefined';\n },\n\n /**\n * Returns true if `value` is an array, else returns false.\n * @param {*} value - The value to test.\n * @returns {Boolean}\n * @function\n */\n isArray: Array.isArray ? Array.isArray : function(value) {\n return Object.prototype.toString.call(value) === '[object Array]';\n },\n\n /**\n * Returns true if `value` is an object (excluding null), else returns false.\n * @param {*} value - The value to test.\n * @returns {Boolean}\n * @since 2.7.0\n */\n isObject: function(value) {\n return value !== null && Object.prototype.toString.call(value) === '[object Object]';\n },\n\n /**\n * Returns `value` if defined, else returns `defaultValue`.\n * @param {*} value - The value to return if defined.\n * @param {*} defaultValue - The value to return if `value` is undefined.\n * @returns {*}\n */\n valueOrDefault: function(value, defaultValue) {\n return typeof value === 'undefined' ? defaultValue : value;\n },\n\n /**\n * Returns value at the given `index` in array if defined, else returns `defaultValue`.\n * @param {Array} value - The array to lookup for value at `index`.\n * @param {Number} index - The index in `value` to lookup for value.\n * @param {*} defaultValue - The value to return if `value[index]` is undefined.\n * @returns {*}\n */\n valueAtIndexOrDefault: function(value, index, defaultValue) {\n return helpers.valueOrDefault(helpers.isArray(value) ? value[index] : value, defaultValue);\n },\n\n /**\n * Calls `fn` with the given `args` in the scope defined by `thisArg` and returns the\n * value returned by `fn`. If `fn` is not a function, this method returns undefined.\n * @param {Function} fn - The function to call.\n * @param {Array|undefined|null} args - The arguments with which `fn` should be called.\n * @param {Object} [thisArg] - The value of `this` provided for the call to `fn`.\n * @returns {*}\n */\n callback: function(fn, args, thisArg) {\n if (fn && typeof fn.call === 'function') {\n return fn.apply(thisArg, args);\n }\n },\n\n /**\n * Note(SB) for performance sake, this method should only be used when loopable type\n * is unknown or in none intensive code (not called often and small loopable). Else\n * it's preferable to use a regular for() loop and save extra function calls.\n * @param {Object|Array} loopable - The object or array to be iterated.\n * @param {Function} fn - The function to call for each item.\n * @param {Object} [thisArg] - The value of `this` provided for the call to `fn`.\n * @param {Boolean} [reverse] - If true, iterates backward on the loopable.\n */\n each: function(loopable, fn, thisArg, reverse) {\n var i, len, keys;\n if (helpers.isArray(loopable)) {\n len = loopable.length;\n if (reverse) {\n for (i = len - 1; i >= 0; i--) {\n fn.call(thisArg, loopable[i], i);\n }\n } else {\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[i], i);\n }\n }\n } else if (helpers.isObject(loopable)) {\n keys = Object.keys(loopable);\n len = keys.length;\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[keys[i]], keys[i]);\n }\n }\n },\n\n /**\n * Returns true if the `a0` and `a1` arrays have the same content, else returns false.\n * @see http://stackoverflow.com/a/14853974\n * @param {Array} a0 - The array to compare\n * @param {Array} a1 - The array to compare\n * @returns {Boolean}\n */\n arrayEquals: function(a0, a1) {\n var i, ilen, v0, v1;\n\n if (!a0 || !a1 || a0.length !== a1.length) {\n return false;\n }\n\n for (i = 0, ilen = a0.length; i < ilen; ++i) {\n v0 = a0[i];\n v1 = a1[i];\n\n if (v0 instanceof Array && v1 instanceof Array) {\n if (!helpers.arrayEquals(v0, v1)) {\n return false;\n }\n } else if (v0 !== v1) {\n // NOTE: two different object instances will never be equal: {x:20} != {x:20}\n return false;\n }\n }\n\n return true;\n },\n\n /**\n * Returns a deep copy of `source` without keeping references on objects and arrays.\n * @param {*} source - The value to clone.\n * @returns {*}\n */\n clone: function(source) {\n if (helpers.isArray(source)) {\n return source.map(helpers.clone);\n }\n\n if (helpers.isObject(source)) {\n var target = {};\n var keys = Object.keys(source);\n var klen = keys.length;\n var k = 0;\n\n for (; k < klen; ++k) {\n target[keys[k]] = helpers.clone(source[keys[k]]);\n }\n\n return target;\n }\n\n return source;\n },\n\n /**\n * The default merger when Chart.helpers.merge is called without merger option.\n * Note(SB): this method is also used by configMerge and scaleMerge as fallback.\n * @private\n */\n _merger: function(key, target, source, options) {\n var tval = target[key];\n var sval = source[key];\n\n if (helpers.isObject(tval) && helpers.isObject(sval)) {\n helpers.merge(tval, sval, options);\n } else {\n target[key] = helpers.clone(sval);\n }\n },\n\n /**\n * Merges source[key] in target[key] only if target[key] is undefined.\n * @private\n */\n _mergerIf: function(key, target, source) {\n var tval = target[key];\n var sval = source[key];\n\n if (helpers.isObject(tval) && helpers.isObject(sval)) {\n helpers.mergeIf(tval, sval);\n } else if (!target.hasOwnProperty(key)) {\n target[key] = helpers.clone(sval);\n }\n },\n\n /**\n * Recursively deep copies `source` properties into `target` with the given `options`.\n * IMPORTANT: `target` is not cloned and will be updated with `source` properties.\n * @param {Object} target - The target object in which all sources are merged into.\n * @param {Object|Array(Object)} source - Object(s) to merge into `target`.\n * @param {Object} [options] - Merging options:\n * @param {Function} [options.merger] - The merge method (key, target, source, options)\n * @returns {Object} The `target` object.\n */\n merge: function(target, source, options) {\n var sources = helpers.isArray(source) ? source : [source];\n var ilen = sources.length;\n var merge, i, keys, klen, k;\n\n if (!helpers.isObject(target)) {\n return target;\n }\n\n options = options || {};\n merge = options.merger || helpers._merger;\n\n for (i = 0; i < ilen; ++i) {\n source = sources[i];\n if (!helpers.isObject(source)) {\n continue;\n }\n\n keys = Object.keys(source);\n for (k = 0, klen = keys.length; k < klen; ++k) {\n merge(keys[k], target, source, options);\n }\n }\n\n return target;\n },\n\n /**\n * Recursively deep copies `source` properties into `target` *only* if not defined in target.\n * IMPORTANT: `target` is not cloned and will be updated with `source` properties.\n * @param {Object} target - The target object in which all sources are merged into.\n * @param {Object|Array(Object)} source - Object(s) to merge into `target`.\n * @returns {Object} The `target` object.\n */\n mergeIf: function(target, source) {\n return helpers.merge(target, source, {merger: helpers._mergerIf});\n },\n\n /**\n * Applies the contents of two or more objects together into the first object.\n * @param {Object} target - The target object in which all objects are merged into.\n * @param {Object} arg1 - Object containing additional properties to merge in target.\n * @param {Object} argN - Additional objects containing properties to merge in target.\n * @returns {Object} The `target` object.\n */\n extend: function(target) {\n var setFn = function(value, key) {\n target[key] = value;\n };\n for (var i = 1, ilen = arguments.length; i < ilen; ++i) {\n helpers.each(arguments[i], setFn);\n }\n return target;\n },\n\n /**\n * Basic javascript inheritance based on the model created in Backbone.js\n */\n inherits: function(extensions) {\n var me = this;\n var ChartElement = (extensions && extensions.hasOwnProperty('constructor')) ? extensions.constructor : function() {\n return me.apply(this, arguments);\n };\n\n var Surrogate = function() {\n this.constructor = ChartElement;\n };\n\n Surrogate.prototype = me.prototype;\n ChartElement.prototype = new Surrogate();\n ChartElement.extend = helpers.inherits;\n\n if (extensions) {\n helpers.extend(ChartElement.prototype, extensions);\n }\n\n ChartElement.__super__ = me.prototype;\n return ChartElement;\n }\n};\n\nmodule.exports = helpers;\n\n// DEPRECATIONS\n\n/**\n * Provided for backward compatibility, use Chart.helpers.callback instead.\n * @function Chart.helpers.callCallback\n * @deprecated since version 2.6.0\n * @todo remove at version 3\n * @private\n */\nhelpers.callCallback = helpers.callback;\n\n/**\n * Provided for backward compatibility, use Array.prototype.indexOf instead.\n * Array.prototype.indexOf compatibility: Chrome, Opera, Safari, FF1.5+, IE9+\n * @function Chart.helpers.indexOf\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.indexOf = function(array, item, fromIndex) {\n return Array.prototype.indexOf.call(array, item, fromIndex);\n};\n\n/**\n * Provided for backward compatibility, use Chart.helpers.valueOrDefault instead.\n * @function Chart.helpers.getValueOrDefault\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.getValueOrDefault = helpers.valueOrDefault;\n\n/**\n * Provided for backward compatibility, use Chart.helpers.valueAtIndexOrDefault instead.\n * @function Chart.helpers.getValueAtIndexOrDefault\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.getValueAtIndexOrDefault = helpers.valueAtIndexOrDefault;\n\n},{}],43:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(42);\n\n/**\n * Easing functions adapted from Robert Penner's easing equations.\n * @namespace Chart.helpers.easingEffects\n * @see http://www.robertpenner.com/easing/\n */\nvar effects = {\n linear: function(t) {\n return t;\n },\n\n easeInQuad: function(t) {\n return t * t;\n },\n\n easeOutQuad: function(t) {\n return -t * (t - 2);\n },\n\n easeInOutQuad: function(t) {\n if ((t /= 0.5) < 1) {\n return 0.5 * t * t;\n }\n return -0.5 * ((--t) * (t - 2) - 1);\n },\n\n easeInCubic: function(t) {\n return t * t * t;\n },\n\n easeOutCubic: function(t) {\n return (t = t - 1) * t * t + 1;\n },\n\n easeInOutCubic: function(t) {\n if ((t /= 0.5) < 1) {\n return 0.5 * t * t * t;\n }\n return 0.5 * ((t -= 2) * t * t + 2);\n },\n\n easeInQuart: function(t) {\n return t * t * t * t;\n },\n\n easeOutQuart: function(t) {\n return -((t = t - 1) * t * t * t - 1);\n },\n\n easeInOutQuart: function(t) {\n if ((t /= 0.5) < 1) {\n return 0.5 * t * t * t * t;\n }\n return -0.5 * ((t -= 2) * t * t * t - 2);\n },\n\n easeInQuint: function(t) {\n return t * t * t * t * t;\n },\n\n easeOutQuint: function(t) {\n return (t = t - 1) * t * t * t * t + 1;\n },\n\n easeInOutQuint: function(t) {\n if ((t /= 0.5) < 1) {\n return 0.5 * t * t * t * t * t;\n }\n return 0.5 * ((t -= 2) * t * t * t * t + 2);\n },\n\n easeInSine: function(t) {\n return -Math.cos(t * (Math.PI / 2)) + 1;\n },\n\n easeOutSine: function(t) {\n return Math.sin(t * (Math.PI / 2));\n },\n\n easeInOutSine: function(t) {\n return -0.5 * (Math.cos(Math.PI * t) - 1);\n },\n\n easeInExpo: function(t) {\n return (t === 0) ? 0 : Math.pow(2, 10 * (t - 1));\n },\n\n easeOutExpo: function(t) {\n return (t === 1) ? 1 : -Math.pow(2, -10 * t) + 1;\n },\n\n easeInOutExpo: function(t) {\n if (t === 0) {\n return 0;\n }\n if (t === 1) {\n return 1;\n }\n if ((t /= 0.5) < 1) {\n return 0.5 * Math.pow(2, 10 * (t - 1));\n }\n return 0.5 * (-Math.pow(2, -10 * --t) + 2);\n },\n\n easeInCirc: function(t) {\n if (t >= 1) {\n return t;\n }\n return -(Math.sqrt(1 - t * t) - 1);\n },\n\n easeOutCirc: function(t) {\n return Math.sqrt(1 - (t = t - 1) * t);\n },\n\n easeInOutCirc: function(t) {\n if ((t /= 0.5) < 1) {\n return -0.5 * (Math.sqrt(1 - t * t) - 1);\n }\n return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);\n },\n\n easeInElastic: function(t) {\n var s = 1.70158;\n var p = 0;\n var a = 1;\n if (t === 0) {\n return 0;\n }\n if (t === 1) {\n return 1;\n }\n if (!p) {\n p = 0.3;\n }\n if (a < 1) {\n a = 1;\n s = p / 4;\n } else {\n s = p / (2 * Math.PI) * Math.asin(1 / a);\n }\n return -(a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p));\n },\n\n easeOutElastic: function(t) {\n var s = 1.70158;\n var p = 0;\n var a = 1;\n if (t === 0) {\n return 0;\n }\n if (t === 1) {\n return 1;\n }\n if (!p) {\n p = 0.3;\n }\n if (a < 1) {\n a = 1;\n s = p / 4;\n } else {\n s = p / (2 * Math.PI) * Math.asin(1 / a);\n }\n return a * Math.pow(2, -10 * t) * Math.sin((t - s) * (2 * Math.PI) / p) + 1;\n },\n\n easeInOutElastic: function(t) {\n var s = 1.70158;\n var p = 0;\n var a = 1;\n if (t === 0) {\n return 0;\n }\n if ((t /= 0.5) === 2) {\n return 1;\n }\n if (!p) {\n p = 0.45;\n }\n if (a < 1) {\n a = 1;\n s = p / 4;\n } else {\n s = p / (2 * Math.PI) * Math.asin(1 / a);\n }\n if (t < 1) {\n return -0.5 * (a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p));\n }\n return a * Math.pow(2, -10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p) * 0.5 + 1;\n },\n easeInBack: function(t) {\n var s = 1.70158;\n return t * t * ((s + 1) * t - s);\n },\n\n easeOutBack: function(t) {\n var s = 1.70158;\n return (t = t - 1) * t * ((s + 1) * t + s) + 1;\n },\n\n easeInOutBack: function(t) {\n var s = 1.70158;\n if ((t /= 0.5) < 1) {\n return 0.5 * (t * t * (((s *= (1.525)) + 1) * t - s));\n }\n return 0.5 * ((t -= 2) * t * (((s *= (1.525)) + 1) * t + s) + 2);\n },\n\n easeInBounce: function(t) {\n return 1 - effects.easeOutBounce(1 - t);\n },\n\n easeOutBounce: function(t) {\n if (t < (1 / 2.75)) {\n return 7.5625 * t * t;\n }\n if (t < (2 / 2.75)) {\n return 7.5625 * (t -= (1.5 / 2.75)) * t + 0.75;\n }\n if (t < (2.5 / 2.75)) {\n return 7.5625 * (t -= (2.25 / 2.75)) * t + 0.9375;\n }\n return 7.5625 * (t -= (2.625 / 2.75)) * t + 0.984375;\n },\n\n easeInOutBounce: function(t) {\n if (t < 0.5) {\n return effects.easeInBounce(t * 2) * 0.5;\n }\n return effects.easeOutBounce(t * 2 - 1) * 0.5 + 0.5;\n }\n};\n\nmodule.exports = {\n effects: effects\n};\n\n// DEPRECATIONS\n\n/**\n * Provided for backward compatibility, use Chart.helpers.easing.effects instead.\n * @function Chart.helpers.easingEffects\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.easingEffects = effects;\n\n},{\"42\":42}],44:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(42);\n\n/**\n * @alias Chart.helpers.options\n * @namespace\n */\nmodule.exports = {\n /**\n * Converts the given line height `value` in pixels for a specific font `size`.\n * @param {Number|String} value - The lineHeight to parse (eg. 1.6, '14px', '75%', '1.6em').\n * @param {Number} size - The font size (in pixels) used to resolve relative `value`.\n * @returns {Number} The effective line height in pixels (size * 1.2 if value is invalid).\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/line-height\n * @since 2.7.0\n */\n toLineHeight: function(value, size) {\n var matches = ('' + value).match(/^(normal|(\\d+(?:\\.\\d+)?)(px|em|%)?)$/);\n if (!matches || matches[1] === 'normal') {\n return size * 1.2;\n }\n\n value = +matches[2];\n\n switch (matches[3]) {\n case 'px':\n return value;\n case '%':\n value /= 100;\n break;\n default:\n break;\n }\n\n return size * value;\n },\n\n /**\n * Converts the given value into a padding object with pre-computed width/height.\n * @param {Number|Object} value - If a number, set the value to all TRBL component,\n * else, if and object, use defined properties and sets undefined ones to 0.\n * @returns {Object} The padding values (top, right, bottom, left, width, height)\n * @since 2.7.0\n */\n toPadding: function(value) {\n var t, r, b, l;\n\n if (helpers.isObject(value)) {\n t = +value.top || 0;\n r = +value.right || 0;\n b = +value.bottom || 0;\n l = +value.left || 0;\n } else {\n t = r = b = l = +value || 0;\n }\n\n return {\n top: t,\n right: r,\n bottom: b,\n left: l,\n height: t + b,\n width: l + r\n };\n },\n\n /**\n * Evaluates the given `inputs` sequentially and returns the first defined value.\n * @param {Array[]} inputs - An array of values, falling back to the last value.\n * @param {Object} [context] - If defined and the current value is a function, the value\n * is called with `context` as first argument and the result becomes the new input.\n * @param {Number} [index] - If defined and the current value is an array, the value\n * at `index` become the new input.\n * @since 2.7.0\n */\n resolve: function(inputs, context, index) {\n var i, ilen, value;\n\n for (i = 0, ilen = inputs.length; i < ilen; ++i) {\n value = inputs[i];\n if (value === undefined) {\n continue;\n }\n if (context !== undefined && typeof value === 'function') {\n value = value(context);\n }\n if (index !== undefined && helpers.isArray(value)) {\n value = value[index];\n }\n if (value !== undefined) {\n return value;\n }\n }\n }\n};\n\n},{\"42\":42}],45:[function(require,module,exports){\n'use strict';\n\nmodule.exports = require(42);\nmodule.exports.easing = require(43);\nmodule.exports.canvas = require(41);\nmodule.exports.options = require(44);\n\n},{\"41\":41,\"42\":42,\"43\":43,\"44\":44}],46:[function(require,module,exports){\n/**\n * Platform fallback implementation (minimal).\n * @see https://github.com/chartjs/Chart.js/pull/4591#issuecomment-319575939\n */\n\nmodule.exports = {\n acquireContext: function(item) {\n if (item && item.canvas) {\n // Support for any object associated to a canvas (including a context2d)\n item = item.canvas;\n }\n\n return item && item.getContext('2d') || null;\n }\n};\n\n},{}],47:[function(require,module,exports){\n/**\n * Chart.Platform implementation for targeting a web browser\n */\n\n'use strict';\n\nvar helpers = require(45);\n\nvar EXPANDO_KEY = '$chartjs';\nvar CSS_PREFIX = 'chartjs-';\nvar CSS_RENDER_MONITOR = CSS_PREFIX + 'render-monitor';\nvar CSS_RENDER_ANIMATION = CSS_PREFIX + 'render-animation';\nvar ANIMATION_START_EVENTS = ['animationstart', 'webkitAnimationStart'];\n\n/**\n * DOM event types -> Chart.js event types.\n * Note: only events with different types are mapped.\n * @see https://developer.mozilla.org/en-US/docs/Web/Events\n */\nvar EVENT_TYPES = {\n touchstart: 'mousedown',\n touchmove: 'mousemove',\n touchend: 'mouseup',\n pointerenter: 'mouseenter',\n pointerdown: 'mousedown',\n pointermove: 'mousemove',\n pointerup: 'mouseup',\n pointerleave: 'mouseout',\n pointerout: 'mouseout'\n};\n\n/**\n * The \"used\" size is the final value of a dimension property after all calculations have\n * been performed. This method uses the computed style of `element` but returns undefined\n * if the computed style is not expressed in pixels. That can happen in some cases where\n * `element` has a size relative to its parent and this last one is not yet displayed,\n * for example because of `display: none` on a parent node.\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/used_value\n * @returns {Number} Size in pixels or undefined if unknown.\n */\nfunction readUsedSize(element, property) {\n var value = helpers.getStyle(element, property);\n var matches = value && value.match(/^(\\d+)(\\.\\d+)?px$/);\n return matches ? Number(matches[1]) : undefined;\n}\n\n/**\n * Initializes the canvas style and render size without modifying the canvas display size,\n * since responsiveness is handled by the controller.resize() method. The config is used\n * to determine the aspect ratio to apply in case no explicit height has been specified.\n */\nfunction initCanvas(canvas, config) {\n var style = canvas.style;\n\n // NOTE(SB) canvas.getAttribute('width') !== canvas.width: in the first case it\n // returns null or '' if no explicit value has been set to the canvas attribute.\n var renderHeight = canvas.getAttribute('height');\n var renderWidth = canvas.getAttribute('width');\n\n // Chart.js modifies some canvas values that we want to restore on destroy\n canvas[EXPANDO_KEY] = {\n initial: {\n height: renderHeight,\n width: renderWidth,\n style: {\n display: style.display,\n height: style.height,\n width: style.width\n }\n }\n };\n\n // Force canvas to display as block to avoid extra space caused by inline\n // elements, which would interfere with the responsive resize process.\n // https://github.com/chartjs/Chart.js/issues/2538\n style.display = style.display || 'block';\n\n if (renderWidth === null || renderWidth === '') {\n var displayWidth = readUsedSize(canvas, 'width');\n if (displayWidth !== undefined) {\n canvas.width = displayWidth;\n }\n }\n\n if (renderHeight === null || renderHeight === '') {\n if (canvas.style.height === '') {\n // If no explicit render height and style height, let's apply the aspect ratio,\n // which one can be specified by the user but also by charts as default option\n // (i.e. options.aspectRatio). If not specified, use canvas aspect ratio of 2.\n canvas.height = canvas.width / (config.options.aspectRatio || 2);\n } else {\n var displayHeight = readUsedSize(canvas, 'height');\n if (displayWidth !== undefined) {\n canvas.height = displayHeight;\n }\n }\n }\n\n return canvas;\n}\n\n/**\n * Detects support for options object argument in addEventListener.\n * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support\n * @private\n */\nvar supportsEventListenerOptions = (function() {\n var supports = false;\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function() {\n supports = true;\n }\n });\n window.addEventListener('e', null, options);\n } catch (e) {\n // continue regardless of error\n }\n return supports;\n}());\n\n// Default passive to true as expected by Chrome for 'touchstart' and 'touchend' events.\n// https://github.com/chartjs/Chart.js/issues/4287\nvar eventListenerOptions = supportsEventListenerOptions ? {passive: true} : false;\n\nfunction addEventListener(node, type, listener) {\n node.addEventListener(type, listener, eventListenerOptions);\n}\n\nfunction removeEventListener(node, type, listener) {\n node.removeEventListener(type, listener, eventListenerOptions);\n}\n\nfunction createEvent(type, chart, x, y, nativeEvent) {\n return {\n type: type,\n chart: chart,\n native: nativeEvent || null,\n x: x !== undefined ? x : null,\n y: y !== undefined ? y : null,\n };\n}\n\nfunction fromNativeEvent(event, chart) {\n var type = EVENT_TYPES[event.type] || event.type;\n var pos = helpers.getRelativePosition(event, chart);\n return createEvent(type, chart, pos.x, pos.y, event);\n}\n\nfunction throttled(fn, thisArg) {\n var ticking = false;\n var args = [];\n\n return function() {\n args = Array.prototype.slice.call(arguments);\n thisArg = thisArg || this;\n\n if (!ticking) {\n ticking = true;\n helpers.requestAnimFrame.call(window, function() {\n ticking = false;\n fn.apply(thisArg, args);\n });\n }\n };\n}\n\n// Implementation based on https://github.com/marcj/css-element-queries\nfunction createResizer(handler) {\n var resizer = document.createElement('div');\n var cls = CSS_PREFIX + 'size-monitor';\n var maxSize = 1000000;\n var style =\n 'position:absolute;' +\n 'left:0;' +\n 'top:0;' +\n 'right:0;' +\n 'bottom:0;' +\n 'overflow:hidden;' +\n 'pointer-events:none;' +\n 'visibility:hidden;' +\n 'z-index:-1;';\n\n resizer.style.cssText = style;\n resizer.className = cls;\n resizer.innerHTML =\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n '
';\n\n var expand = resizer.childNodes[0];\n var shrink = resizer.childNodes[1];\n\n resizer._reset = function() {\n expand.scrollLeft = maxSize;\n expand.scrollTop = maxSize;\n shrink.scrollLeft = maxSize;\n shrink.scrollTop = maxSize;\n };\n var onScroll = function() {\n resizer._reset();\n handler();\n };\n\n addEventListener(expand, 'scroll', onScroll.bind(expand, 'expand'));\n addEventListener(shrink, 'scroll', onScroll.bind(shrink, 'shrink'));\n\n return resizer;\n}\n\n// https://davidwalsh.name/detect-node-insertion\nfunction watchForRender(node, handler) {\n var expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {});\n var proxy = expando.renderProxy = function(e) {\n if (e.animationName === CSS_RENDER_ANIMATION) {\n handler();\n }\n };\n\n helpers.each(ANIMATION_START_EVENTS, function(type) {\n addEventListener(node, type, proxy);\n });\n\n // #4737: Chrome might skip the CSS animation when the CSS_RENDER_MONITOR class\n // is removed then added back immediately (same animation frame?). Accessing the\n // `offsetParent` property will force a reflow and re-evaluate the CSS animation.\n // https://gist.github.com/paulirish/5d52fb081b3570c81e3a#box-metrics\n // https://github.com/chartjs/Chart.js/issues/4737\n expando.reflow = !!node.offsetParent;\n\n node.classList.add(CSS_RENDER_MONITOR);\n}\n\nfunction unwatchForRender(node) {\n var expando = node[EXPANDO_KEY] || {};\n var proxy = expando.renderProxy;\n\n if (proxy) {\n helpers.each(ANIMATION_START_EVENTS, function(type) {\n removeEventListener(node, type, proxy);\n });\n\n delete expando.renderProxy;\n }\n\n node.classList.remove(CSS_RENDER_MONITOR);\n}\n\nfunction addResizeListener(node, listener, chart) {\n var expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {});\n\n // Let's keep track of this added resizer and thus avoid DOM query when removing it.\n var resizer = expando.resizer = createResizer(throttled(function() {\n if (expando.resizer) {\n return listener(createEvent('resize', chart));\n }\n }));\n\n // The resizer needs to be attached to the node parent, so we first need to be\n // sure that `node` is attached to the DOM before injecting the resizer element.\n watchForRender(node, function() {\n if (expando.resizer) {\n var container = node.parentNode;\n if (container && container !== resizer.parentNode) {\n container.insertBefore(resizer, container.firstChild);\n }\n\n // The container size might have changed, let's reset the resizer state.\n resizer._reset();\n }\n });\n}\n\nfunction removeResizeListener(node) {\n var expando = node[EXPANDO_KEY] || {};\n var resizer = expando.resizer;\n\n delete expando.resizer;\n unwatchForRender(node);\n\n if (resizer && resizer.parentNode) {\n resizer.parentNode.removeChild(resizer);\n }\n}\n\nfunction injectCSS(platform, css) {\n // http://stackoverflow.com/q/3922139\n var style = platform._style || document.createElement('style');\n if (!platform._style) {\n platform._style = style;\n css = '/* Chart.js */\\n' + css;\n style.setAttribute('type', 'text/css');\n document.getElementsByTagName('head')[0].appendChild(style);\n }\n\n style.appendChild(document.createTextNode(css));\n}\n\nmodule.exports = {\n /**\n * This property holds whether this platform is enabled for the current environment.\n * Currently used by platform.js to select the proper implementation.\n * @private\n */\n _enabled: typeof window !== 'undefined' && typeof document !== 'undefined',\n\n initialize: function() {\n var keyframes = 'from{opacity:0.99}to{opacity:1}';\n\n injectCSS(this,\n // DOM rendering detection\n // https://davidwalsh.name/detect-node-insertion\n '@-webkit-keyframes ' + CSS_RENDER_ANIMATION + '{' + keyframes + '}' +\n '@keyframes ' + CSS_RENDER_ANIMATION + '{' + keyframes + '}' +\n '.' + CSS_RENDER_MONITOR + '{' +\n '-webkit-animation:' + CSS_RENDER_ANIMATION + ' 0.001s;' +\n 'animation:' + CSS_RENDER_ANIMATION + ' 0.001s;' +\n '}'\n );\n },\n\n acquireContext: function(item, config) {\n if (typeof item === 'string') {\n item = document.getElementById(item);\n } else if (item.length) {\n // Support for array based queries (such as jQuery)\n item = item[0];\n }\n\n if (item && item.canvas) {\n // Support for any object associated to a canvas (including a context2d)\n item = item.canvas;\n }\n\n // To prevent canvas fingerprinting, some add-ons undefine the getContext\n // method, for example: https://github.com/kkapsner/CanvasBlocker\n // https://github.com/chartjs/Chart.js/issues/2807\n var context = item && item.getContext && item.getContext('2d');\n\n // `instanceof HTMLCanvasElement/CanvasRenderingContext2D` fails when the item is\n // inside an iframe or when running in a protected environment. We could guess the\n // types from their toString() value but let's keep things flexible and assume it's\n // a sufficient condition if the item has a context2D which has item as `canvas`.\n // https://github.com/chartjs/Chart.js/issues/3887\n // https://github.com/chartjs/Chart.js/issues/4102\n // https://github.com/chartjs/Chart.js/issues/4152\n if (context && context.canvas === item) {\n initCanvas(item, config);\n return context;\n }\n\n return null;\n },\n\n releaseContext: function(context) {\n var canvas = context.canvas;\n if (!canvas[EXPANDO_KEY]) {\n return;\n }\n\n var initial = canvas[EXPANDO_KEY].initial;\n ['height', 'width'].forEach(function(prop) {\n var value = initial[prop];\n if (helpers.isNullOrUndef(value)) {\n canvas.removeAttribute(prop);\n } else {\n canvas.setAttribute(prop, value);\n }\n });\n\n helpers.each(initial.style || {}, function(value, key) {\n canvas.style[key] = value;\n });\n\n // The canvas render size might have been changed (and thus the state stack discarded),\n // we can't use save() and restore() to restore the initial state. So make sure that at\n // least the canvas context is reset to the default state by setting the canvas width.\n // https://www.w3.org/TR/2011/WD-html5-20110525/the-canvas-element.html\n canvas.width = canvas.width;\n\n delete canvas[EXPANDO_KEY];\n },\n\n addEventListener: function(chart, type, listener) {\n var canvas = chart.canvas;\n if (type === 'resize') {\n // Note: the resize event is not supported on all browsers.\n addResizeListener(canvas, listener, chart);\n return;\n }\n\n var expando = listener[EXPANDO_KEY] || (listener[EXPANDO_KEY] = {});\n var proxies = expando.proxies || (expando.proxies = {});\n var proxy = proxies[chart.id + '_' + type] = function(event) {\n listener(fromNativeEvent(event, chart));\n };\n\n addEventListener(canvas, type, proxy);\n },\n\n removeEventListener: function(chart, type, listener) {\n var canvas = chart.canvas;\n if (type === 'resize') {\n // Note: the resize event is not supported on all browsers.\n removeResizeListener(canvas, listener);\n return;\n }\n\n var expando = listener[EXPANDO_KEY] || {};\n var proxies = expando.proxies || {};\n var proxy = proxies[chart.id + '_' + type];\n if (!proxy) {\n return;\n }\n\n removeEventListener(canvas, type, proxy);\n }\n};\n\n// DEPRECATIONS\n\n/**\n * Provided for backward compatibility, use EventTarget.addEventListener instead.\n * EventTarget.addEventListener compatibility: Chrome, Opera 7, Safari, FF1.5+, IE9+\n * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener\n * @function Chart.helpers.addEvent\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.addEvent = addEventListener;\n\n/**\n * Provided for backward compatibility, use EventTarget.removeEventListener instead.\n * EventTarget.removeEventListener compatibility: Chrome, Opera 7, Safari, FF1.5+, IE9+\n * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener\n * @function Chart.helpers.removeEvent\n * @deprecated since version 2.7.0\n * @todo remove at version 3\n * @private\n */\nhelpers.removeEvent = removeEventListener;\n\n},{\"45\":45}],48:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\nvar basic = require(46);\nvar dom = require(47);\n\n// @TODO Make possible to select another platform at build time.\nvar implementation = dom._enabled ? dom : basic;\n\n/**\n * @namespace Chart.platform\n * @see https://chartjs.gitbooks.io/proposals/content/Platform.html\n * @since 2.4.0\n */\nmodule.exports = helpers.extend({\n /**\n * @since 2.7.0\n */\n initialize: function() {},\n\n /**\n * Called at chart construction time, returns a context2d instance implementing\n * the [W3C Canvas 2D Context API standard]{@link https://www.w3.org/TR/2dcontext/}.\n * @param {*} item - The native item from which to acquire context (platform specific)\n * @param {Object} options - The chart options\n * @returns {CanvasRenderingContext2D} context2d instance\n */\n acquireContext: function() {},\n\n /**\n * Called at chart destruction time, releases any resources associated to the context\n * previously returned by the acquireContext() method.\n * @param {CanvasRenderingContext2D} context - The context2d instance\n * @returns {Boolean} true if the method succeeded, else false\n */\n releaseContext: function() {},\n\n /**\n * Registers the specified listener on the given chart.\n * @param {Chart} chart - Chart from which to listen for event\n * @param {String} type - The ({@link IEvent}) type to listen for\n * @param {Function} listener - Receives a notification (an object that implements\n * the {@link IEvent} interface) when an event of the specified type occurs.\n */\n addEventListener: function() {},\n\n /**\n * Removes the specified listener previously registered with addEventListener.\n * @param {Chart} chart -Chart from which to remove the listener\n * @param {String} type - The ({@link IEvent}) type to remove\n * @param {Function} listener - The listener function to remove from the event target.\n */\n removeEventListener: function() {}\n\n}, implementation);\n\n/**\n * @interface IPlatform\n * Allows abstracting platform dependencies away from the chart\n * @borrows Chart.platform.acquireContext as acquireContext\n * @borrows Chart.platform.releaseContext as releaseContext\n * @borrows Chart.platform.addEventListener as addEventListener\n * @borrows Chart.platform.removeEventListener as removeEventListener\n */\n\n/**\n * @interface IEvent\n * @prop {String} type - The event type name, possible values are:\n * 'contextmenu', 'mouseenter', 'mousedown', 'mousemove', 'mouseup', 'mouseout',\n * 'click', 'dblclick', 'keydown', 'keypress', 'keyup' and 'resize'\n * @prop {*} native - The original native event (null for emulated events, e.g. 'resize')\n * @prop {Number} x - The mouse x position, relative to the canvas (null for incompatible events)\n * @prop {Number} y - The mouse y position, relative to the canvas (null for incompatible events)\n */\n\n},{\"45\":45,\"46\":46,\"47\":47}],49:[function(require,module,exports){\n/**\n * Plugin based on discussion from the following Chart.js issues:\n * @see https://github.com/chartjs/Chart.js/issues/2380#issuecomment-279961569\n * @see https://github.com/chartjs/Chart.js/issues/2440#issuecomment-256461897\n */\n\n'use strict';\n\nvar defaults = require(25);\nvar elements = require(40);\nvar helpers = require(45);\n\ndefaults._set('global', {\n plugins: {\n filler: {\n propagate: true\n }\n }\n});\n\nmodule.exports = function() {\n\n var mappers = {\n dataset: function(source) {\n var index = source.fill;\n var chart = source.chart;\n var meta = chart.getDatasetMeta(index);\n var visible = meta && chart.isDatasetVisible(index);\n var points = (visible && meta.dataset._children) || [];\n var length = points.length || 0;\n\n return !length ? null : function(point, i) {\n return (i < length && points[i]._view) || null;\n };\n },\n\n boundary: function(source) {\n var boundary = source.boundary;\n var x = boundary ? boundary.x : null;\n var y = boundary ? boundary.y : null;\n\n return function(point) {\n return {\n x: x === null ? point.x : x,\n y: y === null ? point.y : y,\n };\n };\n }\n };\n\n // @todo if (fill[0] === '#')\n function decodeFill(el, index, count) {\n var model = el._model || {};\n var fill = model.fill;\n var target;\n\n if (fill === undefined) {\n fill = !!model.backgroundColor;\n }\n\n if (fill === false || fill === null) {\n return false;\n }\n\n if (fill === true) {\n return 'origin';\n }\n\n target = parseFloat(fill, 10);\n if (isFinite(target) && Math.floor(target) === target) {\n if (fill[0] === '-' || fill[0] === '+') {\n target = index + target;\n }\n\n if (target === index || target < 0 || target >= count) {\n return false;\n }\n\n return target;\n }\n\n switch (fill) {\n // compatibility\n case 'bottom':\n return 'start';\n case 'top':\n return 'end';\n case 'zero':\n return 'origin';\n // supported boundaries\n case 'origin':\n case 'start':\n case 'end':\n return fill;\n // invalid fill values\n default:\n return false;\n }\n }\n\n function computeBoundary(source) {\n var model = source.el._model || {};\n var scale = source.el._scale || {};\n var fill = source.fill;\n var target = null;\n var horizontal;\n\n if (isFinite(fill)) {\n return null;\n }\n\n // Backward compatibility: until v3, we still need to support boundary values set on\n // the model (scaleTop, scaleBottom and scaleZero) because some external plugins and\n // controllers might still use it (e.g. the Smith chart).\n\n if (fill === 'start') {\n target = model.scaleBottom === undefined ? scale.bottom : model.scaleBottom;\n } else if (fill === 'end') {\n target = model.scaleTop === undefined ? scale.top : model.scaleTop;\n } else if (model.scaleZero !== undefined) {\n target = model.scaleZero;\n } else if (scale.getBasePosition) {\n target = scale.getBasePosition();\n } else if (scale.getBasePixel) {\n target = scale.getBasePixel();\n }\n\n if (target !== undefined && target !== null) {\n if (target.x !== undefined && target.y !== undefined) {\n return target;\n }\n\n if (typeof target === 'number' && isFinite(target)) {\n horizontal = scale.isHorizontal();\n return {\n x: horizontal ? target : null,\n y: horizontal ? null : target\n };\n }\n }\n\n return null;\n }\n\n function resolveTarget(sources, index, propagate) {\n var source = sources[index];\n var fill = source.fill;\n var visited = [index];\n var target;\n\n if (!propagate) {\n return fill;\n }\n\n while (fill !== false && visited.indexOf(fill) === -1) {\n if (!isFinite(fill)) {\n return fill;\n }\n\n target = sources[fill];\n if (!target) {\n return false;\n }\n\n if (target.visible) {\n return fill;\n }\n\n visited.push(fill);\n fill = target.fill;\n }\n\n return false;\n }\n\n function createMapper(source) {\n var fill = source.fill;\n var type = 'dataset';\n\n if (fill === false) {\n return null;\n }\n\n if (!isFinite(fill)) {\n type = 'boundary';\n }\n\n return mappers[type](source);\n }\n\n function isDrawable(point) {\n return point && !point.skip;\n }\n\n function drawArea(ctx, curve0, curve1, len0, len1) {\n var i;\n\n if (!len0 || !len1) {\n return;\n }\n\n // building first area curve (normal)\n ctx.moveTo(curve0[0].x, curve0[0].y);\n for (i = 1; i < len0; ++i) {\n helpers.canvas.lineTo(ctx, curve0[i - 1], curve0[i]);\n }\n\n // joining the two area curves\n ctx.lineTo(curve1[len1 - 1].x, curve1[len1 - 1].y);\n\n // building opposite area curve (reverse)\n for (i = len1 - 1; i > 0; --i) {\n helpers.canvas.lineTo(ctx, curve1[i], curve1[i - 1], true);\n }\n }\n\n function doFill(ctx, points, mapper, view, color, loop) {\n var count = points.length;\n var span = view.spanGaps;\n var curve0 = [];\n var curve1 = [];\n var len0 = 0;\n var len1 = 0;\n var i, ilen, index, p0, p1, d0, d1;\n\n ctx.beginPath();\n\n for (i = 0, ilen = (count + !!loop); i < ilen; ++i) {\n index = i % count;\n p0 = points[index]._view;\n p1 = mapper(p0, index, view);\n d0 = isDrawable(p0);\n d1 = isDrawable(p1);\n\n if (d0 && d1) {\n len0 = curve0.push(p0);\n len1 = curve1.push(p1);\n } else if (len0 && len1) {\n if (!span) {\n drawArea(ctx, curve0, curve1, len0, len1);\n len0 = len1 = 0;\n curve0 = [];\n curve1 = [];\n } else {\n if (d0) {\n curve0.push(p0);\n }\n if (d1) {\n curve1.push(p1);\n }\n }\n }\n }\n\n drawArea(ctx, curve0, curve1, len0, len1);\n\n ctx.closePath();\n ctx.fillStyle = color;\n ctx.fill();\n }\n\n return {\n id: 'filler',\n\n afterDatasetsUpdate: function(chart, options) {\n var count = (chart.data.datasets || []).length;\n var propagate = options.propagate;\n var sources = [];\n var meta, i, el, source;\n\n for (i = 0; i < count; ++i) {\n meta = chart.getDatasetMeta(i);\n el = meta.dataset;\n source = null;\n\n if (el && el._model && el instanceof elements.Line) {\n source = {\n visible: chart.isDatasetVisible(i),\n fill: decodeFill(el, i, count),\n chart: chart,\n el: el\n };\n }\n\n meta.$filler = source;\n sources.push(source);\n }\n\n for (i = 0; i < count; ++i) {\n source = sources[i];\n if (!source) {\n continue;\n }\n\n source.fill = resolveTarget(sources, i, propagate);\n source.boundary = computeBoundary(source);\n source.mapper = createMapper(source);\n }\n },\n\n beforeDatasetDraw: function(chart, args) {\n var meta = args.meta.$filler;\n if (!meta) {\n return;\n }\n\n var ctx = chart.ctx;\n var el = meta.el;\n var view = el._view;\n var points = el._children || [];\n var mapper = meta.mapper;\n var color = view.backgroundColor || defaults.global.defaultColor;\n\n if (mapper && color && points.length) {\n helpers.canvas.clipArea(ctx, chart.chartArea);\n doFill(ctx, points, mapper, view, color, el._loop);\n helpers.canvas.unclipArea(ctx);\n }\n }\n };\n};\n\n},{\"25\":25,\"40\":40,\"45\":45}],50:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n legend: {\n display: true,\n position: 'top',\n fullWidth: true,\n reverse: false,\n weight: 1000,\n\n // a callback that will handle\n onClick: function(e, legendItem) {\n var index = legendItem.datasetIndex;\n var ci = this.chart;\n var meta = ci.getDatasetMeta(index);\n\n // See controller.isDatasetVisible comment\n meta.hidden = meta.hidden === null ? !ci.data.datasets[index].hidden : null;\n\n // We hid a dataset ... rerender the chart\n ci.update();\n },\n\n onHover: null,\n\n labels: {\n boxWidth: 40,\n padding: 10,\n // Generates labels shown in the legend\n // Valid properties to return:\n // text : text to display\n // fillStyle : fill of coloured box\n // strokeStyle: stroke of coloured box\n // hidden : if this legend item refers to a hidden item\n // lineCap : cap style for line\n // lineDash\n // lineDashOffset :\n // lineJoin :\n // lineWidth :\n generateLabels: function(chart) {\n var data = chart.data;\n return helpers.isArray(data.datasets) ? data.datasets.map(function(dataset, i) {\n return {\n text: dataset.label,\n fillStyle: (!helpers.isArray(dataset.backgroundColor) ? dataset.backgroundColor : dataset.backgroundColor[0]),\n hidden: !chart.isDatasetVisible(i),\n lineCap: dataset.borderCapStyle,\n lineDash: dataset.borderDash,\n lineDashOffset: dataset.borderDashOffset,\n lineJoin: dataset.borderJoinStyle,\n lineWidth: dataset.borderWidth,\n strokeStyle: dataset.borderColor,\n pointStyle: dataset.pointStyle,\n\n // Below is extra data used for toggling the datasets\n datasetIndex: i\n };\n }, this) : [];\n }\n }\n },\n\n legendCallback: function(chart) {\n var text = [];\n text.push('
    ');\n for (var i = 0; i < chart.data.datasets.length; i++) {\n text.push('
  • ');\n if (chart.data.datasets[i].label) {\n text.push(chart.data.datasets[i].label);\n }\n text.push('
  • ');\n }\n text.push('
');\n return text.join('');\n }\n});\n\nmodule.exports = function(Chart) {\n\n var layout = Chart.layoutService;\n var noop = helpers.noop;\n\n /**\n * Helper function to get the box width based on the usePointStyle option\n * @param labelopts {Object} the label options on the legend\n * @param fontSize {Number} the label font size\n * @return {Number} width of the color box area\n */\n function getBoxWidth(labelOpts, fontSize) {\n return labelOpts.usePointStyle ?\n fontSize * Math.SQRT2 :\n labelOpts.boxWidth;\n }\n\n Chart.Legend = Element.extend({\n\n initialize: function(config) {\n helpers.extend(this, config);\n\n // Contains hit boxes for each dataset (in dataset order)\n this.legendHitBoxes = [];\n\n // Are we in doughnut mode which has a different data type\n this.doughnutMode = false;\n },\n\n // These methods are ordered by lifecycle. Utilities then follow.\n // Any function defined here is inherited by all legend types.\n // Any function can be extended by the legend type\n\n beforeUpdate: noop,\n update: function(maxWidth, maxHeight, margins) {\n var me = this;\n\n // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;)\n me.beforeUpdate();\n\n // Absorb the master measurements\n me.maxWidth = maxWidth;\n me.maxHeight = maxHeight;\n me.margins = margins;\n\n // Dimensions\n me.beforeSetDimensions();\n me.setDimensions();\n me.afterSetDimensions();\n // Labels\n me.beforeBuildLabels();\n me.buildLabels();\n me.afterBuildLabels();\n\n // Fit\n me.beforeFit();\n me.fit();\n me.afterFit();\n //\n me.afterUpdate();\n\n return me.minSize;\n },\n afterUpdate: noop,\n\n //\n\n beforeSetDimensions: noop,\n setDimensions: function() {\n var me = this;\n // Set the unconstrained dimension before label rotation\n if (me.isHorizontal()) {\n // Reset position before calculating rotation\n me.width = me.maxWidth;\n me.left = 0;\n me.right = me.width;\n } else {\n me.height = me.maxHeight;\n\n // Reset position before calculating rotation\n me.top = 0;\n me.bottom = me.height;\n }\n\n // Reset padding\n me.paddingLeft = 0;\n me.paddingTop = 0;\n me.paddingRight = 0;\n me.paddingBottom = 0;\n\n // Reset minSize\n me.minSize = {\n width: 0,\n height: 0\n };\n },\n afterSetDimensions: noop,\n\n //\n\n beforeBuildLabels: noop,\n buildLabels: function() {\n var me = this;\n var labelOpts = me.options.labels || {};\n var legendItems = helpers.callback(labelOpts.generateLabels, [me.chart], me) || [];\n\n if (labelOpts.filter) {\n legendItems = legendItems.filter(function(item) {\n return labelOpts.filter(item, me.chart.data);\n });\n }\n\n if (me.options.reverse) {\n legendItems.reverse();\n }\n\n me.legendItems = legendItems;\n },\n afterBuildLabels: noop,\n\n //\n\n beforeFit: noop,\n fit: function() {\n var me = this;\n var opts = me.options;\n var labelOpts = opts.labels;\n var display = opts.display;\n\n var ctx = me.ctx;\n\n var globalDefault = defaults.global;\n var valueOrDefault = helpers.valueOrDefault;\n var fontSize = valueOrDefault(labelOpts.fontSize, globalDefault.defaultFontSize);\n var fontStyle = valueOrDefault(labelOpts.fontStyle, globalDefault.defaultFontStyle);\n var fontFamily = valueOrDefault(labelOpts.fontFamily, globalDefault.defaultFontFamily);\n var labelFont = helpers.fontString(fontSize, fontStyle, fontFamily);\n\n // Reset hit boxes\n var hitboxes = me.legendHitBoxes = [];\n\n var minSize = me.minSize;\n var isHorizontal = me.isHorizontal();\n\n if (isHorizontal) {\n minSize.width = me.maxWidth; // fill all the width\n minSize.height = display ? 10 : 0;\n } else {\n minSize.width = display ? 10 : 0;\n minSize.height = me.maxHeight; // fill all the height\n }\n\n // Increase sizes here\n if (display) {\n ctx.font = labelFont;\n\n if (isHorizontal) {\n // Labels\n\n // Width of each line of legend boxes. Labels wrap onto multiple lines when there are too many to fit on one\n var lineWidths = me.lineWidths = [0];\n var totalHeight = me.legendItems.length ? fontSize + (labelOpts.padding) : 0;\n\n ctx.textAlign = 'left';\n ctx.textBaseline = 'top';\n\n helpers.each(me.legendItems, function(legendItem, i) {\n var boxWidth = getBoxWidth(labelOpts, fontSize);\n var width = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n\n if (lineWidths[lineWidths.length - 1] + width + labelOpts.padding >= me.width) {\n totalHeight += fontSize + (labelOpts.padding);\n lineWidths[lineWidths.length] = me.left;\n }\n\n // Store the hitbox width and height here. Final position will be updated in `draw`\n hitboxes[i] = {\n left: 0,\n top: 0,\n width: width,\n height: fontSize\n };\n\n lineWidths[lineWidths.length - 1] += width + labelOpts.padding;\n });\n\n minSize.height += totalHeight;\n\n } else {\n var vPadding = labelOpts.padding;\n var columnWidths = me.columnWidths = [];\n var totalWidth = labelOpts.padding;\n var currentColWidth = 0;\n var currentColHeight = 0;\n var itemHeight = fontSize + vPadding;\n\n helpers.each(me.legendItems, function(legendItem, i) {\n var boxWidth = getBoxWidth(labelOpts, fontSize);\n var itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n\n // If too tall, go to new column\n if (currentColHeight + itemHeight > minSize.height) {\n totalWidth += currentColWidth + labelOpts.padding;\n columnWidths.push(currentColWidth); // previous column width\n\n currentColWidth = 0;\n currentColHeight = 0;\n }\n\n // Get max width\n currentColWidth = Math.max(currentColWidth, itemWidth);\n currentColHeight += itemHeight;\n\n // Store the hitbox width and height here. Final position will be updated in `draw`\n hitboxes[i] = {\n left: 0,\n top: 0,\n width: itemWidth,\n height: fontSize\n };\n });\n\n totalWidth += currentColWidth;\n columnWidths.push(currentColWidth);\n minSize.width += totalWidth;\n }\n }\n\n me.width = minSize.width;\n me.height = minSize.height;\n },\n afterFit: noop,\n\n // Shared Methods\n isHorizontal: function() {\n return this.options.position === 'top' || this.options.position === 'bottom';\n },\n\n // Actually draw the legend on the canvas\n draw: function() {\n var me = this;\n var opts = me.options;\n var labelOpts = opts.labels;\n var globalDefault = defaults.global;\n var lineDefault = globalDefault.elements.line;\n var legendWidth = me.width;\n var lineWidths = me.lineWidths;\n\n if (opts.display) {\n var ctx = me.ctx;\n var valueOrDefault = helpers.valueOrDefault;\n var fontColor = valueOrDefault(labelOpts.fontColor, globalDefault.defaultFontColor);\n var fontSize = valueOrDefault(labelOpts.fontSize, globalDefault.defaultFontSize);\n var fontStyle = valueOrDefault(labelOpts.fontStyle, globalDefault.defaultFontStyle);\n var fontFamily = valueOrDefault(labelOpts.fontFamily, globalDefault.defaultFontFamily);\n var labelFont = helpers.fontString(fontSize, fontStyle, fontFamily);\n var cursor;\n\n // Canvas setup\n ctx.textAlign = 'left';\n ctx.textBaseline = 'middle';\n ctx.lineWidth = 0.5;\n ctx.strokeStyle = fontColor; // for strikethrough effect\n ctx.fillStyle = fontColor; // render in correct colour\n ctx.font = labelFont;\n\n var boxWidth = getBoxWidth(labelOpts, fontSize);\n var hitboxes = me.legendHitBoxes;\n\n // current position\n var drawLegendBox = function(x, y, legendItem) {\n if (isNaN(boxWidth) || boxWidth <= 0) {\n return;\n }\n\n // Set the ctx for the box\n ctx.save();\n\n ctx.fillStyle = valueOrDefault(legendItem.fillStyle, globalDefault.defaultColor);\n ctx.lineCap = valueOrDefault(legendItem.lineCap, lineDefault.borderCapStyle);\n ctx.lineDashOffset = valueOrDefault(legendItem.lineDashOffset, lineDefault.borderDashOffset);\n ctx.lineJoin = valueOrDefault(legendItem.lineJoin, lineDefault.borderJoinStyle);\n ctx.lineWidth = valueOrDefault(legendItem.lineWidth, lineDefault.borderWidth);\n ctx.strokeStyle = valueOrDefault(legendItem.strokeStyle, globalDefault.defaultColor);\n var isLineWidthZero = (valueOrDefault(legendItem.lineWidth, lineDefault.borderWidth) === 0);\n\n if (ctx.setLineDash) {\n // IE 9 and 10 do not support line dash\n ctx.setLineDash(valueOrDefault(legendItem.lineDash, lineDefault.borderDash));\n }\n\n if (opts.labels && opts.labels.usePointStyle) {\n // Recalculate x and y for drawPoint() because its expecting\n // x and y to be center of figure (instead of top left)\n var radius = fontSize * Math.SQRT2 / 2;\n var offSet = radius / Math.SQRT2;\n var centerX = x + offSet;\n var centerY = y + offSet;\n\n // Draw pointStyle as legend symbol\n helpers.canvas.drawPoint(ctx, legendItem.pointStyle, radius, centerX, centerY);\n } else {\n // Draw box as legend symbol\n if (!isLineWidthZero) {\n ctx.strokeRect(x, y, boxWidth, fontSize);\n }\n ctx.fillRect(x, y, boxWidth, fontSize);\n }\n\n ctx.restore();\n };\n var fillText = function(x, y, legendItem, textWidth) {\n var halfFontSize = fontSize / 2;\n var xLeft = boxWidth + halfFontSize + x;\n var yMiddle = y + halfFontSize;\n\n ctx.fillText(legendItem.text, xLeft, yMiddle);\n\n if (legendItem.hidden) {\n // Strikethrough the text if hidden\n ctx.beginPath();\n ctx.lineWidth = 2;\n ctx.moveTo(xLeft, yMiddle);\n ctx.lineTo(xLeft + textWidth, yMiddle);\n ctx.stroke();\n }\n };\n\n // Horizontal\n var isHorizontal = me.isHorizontal();\n if (isHorizontal) {\n cursor = {\n x: me.left + ((legendWidth - lineWidths[0]) / 2),\n y: me.top + labelOpts.padding,\n line: 0\n };\n } else {\n cursor = {\n x: me.left + labelOpts.padding,\n y: me.top + labelOpts.padding,\n line: 0\n };\n }\n\n var itemHeight = fontSize + labelOpts.padding;\n helpers.each(me.legendItems, function(legendItem, i) {\n var textWidth = ctx.measureText(legendItem.text).width;\n var width = boxWidth + (fontSize / 2) + textWidth;\n var x = cursor.x;\n var y = cursor.y;\n\n if (isHorizontal) {\n if (x + width >= legendWidth) {\n y = cursor.y += itemHeight;\n cursor.line++;\n x = cursor.x = me.left + ((legendWidth - lineWidths[cursor.line]) / 2);\n }\n } else if (y + itemHeight > me.bottom) {\n x = cursor.x = x + me.columnWidths[cursor.line] + labelOpts.padding;\n y = cursor.y = me.top + labelOpts.padding;\n cursor.line++;\n }\n\n drawLegendBox(x, y, legendItem);\n\n hitboxes[i].left = x;\n hitboxes[i].top = y;\n\n // Fill the actual label\n fillText(x, y, legendItem, textWidth);\n\n if (isHorizontal) {\n cursor.x += width + (labelOpts.padding);\n } else {\n cursor.y += itemHeight;\n }\n\n });\n }\n },\n\n /**\n * Handle an event\n * @private\n * @param {IEvent} event - The event to handle\n * @return {Boolean} true if a change occured\n */\n handleEvent: function(e) {\n var me = this;\n var opts = me.options;\n var type = e.type === 'mouseup' ? 'click' : e.type;\n var changed = false;\n\n if (type === 'mousemove') {\n if (!opts.onHover) {\n return;\n }\n } else if (type === 'click') {\n if (!opts.onClick) {\n return;\n }\n } else {\n return;\n }\n\n // Chart event already has relative position in it\n var x = e.x;\n var y = e.y;\n\n if (x >= me.left && x <= me.right && y >= me.top && y <= me.bottom) {\n // See if we are touching one of the dataset boxes\n var lh = me.legendHitBoxes;\n for (var i = 0; i < lh.length; ++i) {\n var hitBox = lh[i];\n\n if (x >= hitBox.left && x <= hitBox.left + hitBox.width && y >= hitBox.top && y <= hitBox.top + hitBox.height) {\n // Touching an element\n if (type === 'click') {\n // use e.native for backwards compatibility\n opts.onClick.call(me, e.native, me.legendItems[i]);\n changed = true;\n break;\n } else if (type === 'mousemove') {\n // use e.native for backwards compatibility\n opts.onHover.call(me, e.native, me.legendItems[i]);\n changed = true;\n break;\n }\n }\n }\n }\n\n return changed;\n }\n });\n\n function createNewLegendAndAttach(chart, legendOpts) {\n var legend = new Chart.Legend({\n ctx: chart.ctx,\n options: legendOpts,\n chart: chart\n });\n\n layout.configure(chart, legend, legendOpts);\n layout.addBox(chart, legend);\n chart.legend = legend;\n }\n\n return {\n id: 'legend',\n\n beforeInit: function(chart) {\n var legendOpts = chart.options.legend;\n\n if (legendOpts) {\n createNewLegendAndAttach(chart, legendOpts);\n }\n },\n\n beforeUpdate: function(chart) {\n var legendOpts = chart.options.legend;\n var legend = chart.legend;\n\n if (legendOpts) {\n helpers.mergeIf(legendOpts, defaults.global.legend);\n\n if (legend) {\n layout.configure(chart, legend, legendOpts);\n legend.options = legendOpts;\n } else {\n createNewLegendAndAttach(chart, legendOpts);\n }\n } else if (legend) {\n layout.removeBox(chart, legend);\n delete chart.legend;\n }\n },\n\n afterEvent: function(chart, e) {\n var legend = chart.legend;\n if (legend) {\n legend.handleEvent(e);\n }\n }\n };\n};\n\n},{\"25\":25,\"26\":26,\"45\":45}],51:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar Element = require(26);\nvar helpers = require(45);\n\ndefaults._set('global', {\n title: {\n display: false,\n fontStyle: 'bold',\n fullWidth: true,\n lineHeight: 1.2,\n padding: 10,\n position: 'top',\n text: '',\n weight: 2000 // by default greater than legend (1000) to be above\n }\n});\n\nmodule.exports = function(Chart) {\n\n var layout = Chart.layoutService;\n var noop = helpers.noop;\n\n Chart.Title = Element.extend({\n initialize: function(config) {\n var me = this;\n helpers.extend(me, config);\n\n // Contains hit boxes for each dataset (in dataset order)\n me.legendHitBoxes = [];\n },\n\n // These methods are ordered by lifecycle. Utilities then follow.\n\n beforeUpdate: noop,\n update: function(maxWidth, maxHeight, margins) {\n var me = this;\n\n // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;)\n me.beforeUpdate();\n\n // Absorb the master measurements\n me.maxWidth = maxWidth;\n me.maxHeight = maxHeight;\n me.margins = margins;\n\n // Dimensions\n me.beforeSetDimensions();\n me.setDimensions();\n me.afterSetDimensions();\n // Labels\n me.beforeBuildLabels();\n me.buildLabels();\n me.afterBuildLabels();\n\n // Fit\n me.beforeFit();\n me.fit();\n me.afterFit();\n //\n me.afterUpdate();\n\n return me.minSize;\n\n },\n afterUpdate: noop,\n\n //\n\n beforeSetDimensions: noop,\n setDimensions: function() {\n var me = this;\n // Set the unconstrained dimension before label rotation\n if (me.isHorizontal()) {\n // Reset position before calculating rotation\n me.width = me.maxWidth;\n me.left = 0;\n me.right = me.width;\n } else {\n me.height = me.maxHeight;\n\n // Reset position before calculating rotation\n me.top = 0;\n me.bottom = me.height;\n }\n\n // Reset padding\n me.paddingLeft = 0;\n me.paddingTop = 0;\n me.paddingRight = 0;\n me.paddingBottom = 0;\n\n // Reset minSize\n me.minSize = {\n width: 0,\n height: 0\n };\n },\n afterSetDimensions: noop,\n\n //\n\n beforeBuildLabels: noop,\n buildLabels: noop,\n afterBuildLabels: noop,\n\n //\n\n beforeFit: noop,\n fit: function() {\n var me = this;\n var valueOrDefault = helpers.valueOrDefault;\n var opts = me.options;\n var display = opts.display;\n var fontSize = valueOrDefault(opts.fontSize, defaults.global.defaultFontSize);\n var minSize = me.minSize;\n var lineCount = helpers.isArray(opts.text) ? opts.text.length : 1;\n var lineHeight = helpers.options.toLineHeight(opts.lineHeight, fontSize);\n var textSize = display ? (lineCount * lineHeight) + (opts.padding * 2) : 0;\n\n if (me.isHorizontal()) {\n minSize.width = me.maxWidth; // fill all the width\n minSize.height = textSize;\n } else {\n minSize.width = textSize;\n minSize.height = me.maxHeight; // fill all the height\n }\n\n me.width = minSize.width;\n me.height = minSize.height;\n\n },\n afterFit: noop,\n\n // Shared Methods\n isHorizontal: function() {\n var pos = this.options.position;\n return pos === 'top' || pos === 'bottom';\n },\n\n // Actually draw the title block on the canvas\n draw: function() {\n var me = this;\n var ctx = me.ctx;\n var valueOrDefault = helpers.valueOrDefault;\n var opts = me.options;\n var globalDefaults = defaults.global;\n\n if (opts.display) {\n var fontSize = valueOrDefault(opts.fontSize, globalDefaults.defaultFontSize);\n var fontStyle = valueOrDefault(opts.fontStyle, globalDefaults.defaultFontStyle);\n var fontFamily = valueOrDefault(opts.fontFamily, globalDefaults.defaultFontFamily);\n var titleFont = helpers.fontString(fontSize, fontStyle, fontFamily);\n var lineHeight = helpers.options.toLineHeight(opts.lineHeight, fontSize);\n var offset = lineHeight / 2 + opts.padding;\n var rotation = 0;\n var top = me.top;\n var left = me.left;\n var bottom = me.bottom;\n var right = me.right;\n var maxWidth, titleX, titleY;\n\n ctx.fillStyle = valueOrDefault(opts.fontColor, globalDefaults.defaultFontColor); // render in correct colour\n ctx.font = titleFont;\n\n // Horizontal\n if (me.isHorizontal()) {\n titleX = left + ((right - left) / 2); // midpoint of the width\n titleY = top + offset;\n maxWidth = right - left;\n } else {\n titleX = opts.position === 'left' ? left + offset : right - offset;\n titleY = top + ((bottom - top) / 2);\n maxWidth = bottom - top;\n rotation = Math.PI * (opts.position === 'left' ? -0.5 : 0.5);\n }\n\n ctx.save();\n ctx.translate(titleX, titleY);\n ctx.rotate(rotation);\n ctx.textAlign = 'center';\n ctx.textBaseline = 'middle';\n\n var text = opts.text;\n if (helpers.isArray(text)) {\n var y = 0;\n for (var i = 0; i < text.length; ++i) {\n ctx.fillText(text[i], 0, y, maxWidth);\n y += lineHeight;\n }\n } else {\n ctx.fillText(text, 0, 0, maxWidth);\n }\n\n ctx.restore();\n }\n }\n });\n\n function createNewTitleBlockAndAttach(chart, titleOpts) {\n var title = new Chart.Title({\n ctx: chart.ctx,\n options: titleOpts,\n chart: chart\n });\n\n layout.configure(chart, title, titleOpts);\n layout.addBox(chart, title);\n chart.titleBlock = title;\n }\n\n return {\n id: 'title',\n\n beforeInit: function(chart) {\n var titleOpts = chart.options.title;\n\n if (titleOpts) {\n createNewTitleBlockAndAttach(chart, titleOpts);\n }\n },\n\n beforeUpdate: function(chart) {\n var titleOpts = chart.options.title;\n var titleBlock = chart.titleBlock;\n\n if (titleOpts) {\n helpers.mergeIf(titleOpts, defaults.global.title);\n\n if (titleBlock) {\n layout.configure(chart, titleBlock, titleOpts);\n titleBlock.options = titleOpts;\n } else {\n createNewTitleBlockAndAttach(chart, titleOpts);\n }\n } else if (titleBlock) {\n Chart.layoutService.removeBox(chart, titleBlock);\n delete chart.titleBlock;\n }\n }\n };\n};\n\n},{\"25\":25,\"26\":26,\"45\":45}],52:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function(Chart) {\n\n // Default config for a category scale\n var defaultConfig = {\n position: 'bottom'\n };\n\n var DatasetScale = Chart.Scale.extend({\n /**\n * Internal function to get the correct labels. If data.xLabels or data.yLabels are defined, use those\n * else fall back to data.labels\n * @private\n */\n getLabels: function() {\n var data = this.chart.data;\n return this.options.labels || (this.isHorizontal() ? data.xLabels : data.yLabels) || data.labels;\n },\n\n determineDataLimits: function() {\n var me = this;\n var labels = me.getLabels();\n me.minIndex = 0;\n me.maxIndex = labels.length - 1;\n var findIndex;\n\n if (me.options.ticks.min !== undefined) {\n // user specified min value\n findIndex = labels.indexOf(me.options.ticks.min);\n me.minIndex = findIndex !== -1 ? findIndex : me.minIndex;\n }\n\n if (me.options.ticks.max !== undefined) {\n // user specified max value\n findIndex = labels.indexOf(me.options.ticks.max);\n me.maxIndex = findIndex !== -1 ? findIndex : me.maxIndex;\n }\n\n me.min = labels[me.minIndex];\n me.max = labels[me.maxIndex];\n },\n\n buildTicks: function() {\n var me = this;\n var labels = me.getLabels();\n // If we are viewing some subset of labels, slice the original array\n me.ticks = (me.minIndex === 0 && me.maxIndex === labels.length - 1) ? labels : labels.slice(me.minIndex, me.maxIndex + 1);\n },\n\n getLabelForIndex: function(index, datasetIndex) {\n var me = this;\n var data = me.chart.data;\n var isHorizontal = me.isHorizontal();\n\n if (data.yLabels && !isHorizontal) {\n return me.getRightValue(data.datasets[datasetIndex].data[index]);\n }\n return me.ticks[index - me.minIndex];\n },\n\n // Used to get data value locations. Value can either be an index or a numerical value\n getPixelForValue: function(value, index) {\n var me = this;\n var offset = me.options.offset;\n // 1 is added because we need the length but we have the indexes\n var offsetAmt = Math.max((me.maxIndex + 1 - me.minIndex - (offset ? 0 : 1)), 1);\n\n // If value is a data object, then index is the index in the data array,\n // not the index of the scale. We need to change that.\n var valueCategory;\n if (value !== undefined && value !== null) {\n valueCategory = me.isHorizontal() ? value.x : value.y;\n }\n if (valueCategory !== undefined || (value !== undefined && isNaN(index))) {\n var labels = me.getLabels();\n value = valueCategory || value;\n var idx = labels.indexOf(value);\n index = idx !== -1 ? idx : index;\n }\n\n if (me.isHorizontal()) {\n var valueWidth = me.width / offsetAmt;\n var widthOffset = (valueWidth * (index - me.minIndex));\n\n if (offset) {\n widthOffset += (valueWidth / 2);\n }\n\n return me.left + Math.round(widthOffset);\n }\n var valueHeight = me.height / offsetAmt;\n var heightOffset = (valueHeight * (index - me.minIndex));\n\n if (offset) {\n heightOffset += (valueHeight / 2);\n }\n\n return me.top + Math.round(heightOffset);\n },\n getPixelForTick: function(index) {\n return this.getPixelForValue(this.ticks[index], index + this.minIndex, null);\n },\n getValueForPixel: function(pixel) {\n var me = this;\n var offset = me.options.offset;\n var value;\n var offsetAmt = Math.max((me._ticks.length - (offset ? 0 : 1)), 1);\n var horz = me.isHorizontal();\n var valueDimension = (horz ? me.width : me.height) / offsetAmt;\n\n pixel -= horz ? me.left : me.top;\n\n if (offset) {\n pixel -= (valueDimension / 2);\n }\n\n if (pixel <= 0) {\n value = 0;\n } else {\n value = Math.round(pixel / valueDimension);\n }\n\n return value + me.minIndex;\n },\n getBasePixel: function() {\n return this.bottom;\n }\n });\n\n Chart.scaleService.registerScaleType('category', DatasetScale, defaultConfig);\n\n};\n\n},{}],53:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar helpers = require(45);\nvar Ticks = require(34);\n\nmodule.exports = function(Chart) {\n\n var defaultConfig = {\n position: 'left',\n ticks: {\n callback: Ticks.formatters.linear\n }\n };\n\n var LinearScale = Chart.LinearScaleBase.extend({\n\n determineDataLimits: function() {\n var me = this;\n var opts = me.options;\n var chart = me.chart;\n var data = chart.data;\n var datasets = data.datasets;\n var isHorizontal = me.isHorizontal();\n var DEFAULT_MIN = 0;\n var DEFAULT_MAX = 1;\n\n function IDMatches(meta) {\n return isHorizontal ? meta.xAxisID === me.id : meta.yAxisID === me.id;\n }\n\n // First Calculate the range\n me.min = null;\n me.max = null;\n\n var hasStacks = opts.stacked;\n if (hasStacks === undefined) {\n helpers.each(datasets, function(dataset, datasetIndex) {\n if (hasStacks) {\n return;\n }\n\n var meta = chart.getDatasetMeta(datasetIndex);\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta) &&\n meta.stack !== undefined) {\n hasStacks = true;\n }\n });\n }\n\n if (opts.stacked || hasStacks) {\n var valuesPerStack = {};\n\n helpers.each(datasets, function(dataset, datasetIndex) {\n var meta = chart.getDatasetMeta(datasetIndex);\n var key = [\n meta.type,\n // we have a separate stack for stack=undefined datasets when the opts.stacked is undefined\n ((opts.stacked === undefined && meta.stack === undefined) ? datasetIndex : ''),\n meta.stack\n ].join('.');\n\n if (valuesPerStack[key] === undefined) {\n valuesPerStack[key] = {\n positiveValues: [],\n negativeValues: []\n };\n }\n\n // Store these per type\n var positiveValues = valuesPerStack[key].positiveValues;\n var negativeValues = valuesPerStack[key].negativeValues;\n\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) {\n helpers.each(dataset.data, function(rawValue, index) {\n var value = +me.getRightValue(rawValue);\n if (isNaN(value) || meta.data[index].hidden) {\n return;\n }\n\n positiveValues[index] = positiveValues[index] || 0;\n negativeValues[index] = negativeValues[index] || 0;\n\n if (opts.relativePoints) {\n positiveValues[index] = 100;\n } else if (value < 0) {\n negativeValues[index] += value;\n } else {\n positiveValues[index] += value;\n }\n });\n }\n });\n\n helpers.each(valuesPerStack, function(valuesForType) {\n var values = valuesForType.positiveValues.concat(valuesForType.negativeValues);\n var minVal = helpers.min(values);\n var maxVal = helpers.max(values);\n me.min = me.min === null ? minVal : Math.min(me.min, minVal);\n me.max = me.max === null ? maxVal : Math.max(me.max, maxVal);\n });\n\n } else {\n helpers.each(datasets, function(dataset, datasetIndex) {\n var meta = chart.getDatasetMeta(datasetIndex);\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) {\n helpers.each(dataset.data, function(rawValue, index) {\n var value = +me.getRightValue(rawValue);\n if (isNaN(value) || meta.data[index].hidden) {\n return;\n }\n\n if (me.min === null) {\n me.min = value;\n } else if (value < me.min) {\n me.min = value;\n }\n\n if (me.max === null) {\n me.max = value;\n } else if (value > me.max) {\n me.max = value;\n }\n });\n }\n });\n }\n\n me.min = isFinite(me.min) && !isNaN(me.min) ? me.min : DEFAULT_MIN;\n me.max = isFinite(me.max) && !isNaN(me.max) ? me.max : DEFAULT_MAX;\n\n // Common base implementation to handle ticks.min, ticks.max, ticks.beginAtZero\n this.handleTickRangeOptions();\n },\n getTickLimit: function() {\n var maxTicks;\n var me = this;\n var tickOpts = me.options.ticks;\n\n if (me.isHorizontal()) {\n maxTicks = Math.min(tickOpts.maxTicksLimit ? tickOpts.maxTicksLimit : 11, Math.ceil(me.width / 50));\n } else {\n // The factor of 2 used to scale the font size has been experimentally determined.\n var tickFontSize = helpers.valueOrDefault(tickOpts.fontSize, defaults.global.defaultFontSize);\n maxTicks = Math.min(tickOpts.maxTicksLimit ? tickOpts.maxTicksLimit : 11, Math.ceil(me.height / (2 * tickFontSize)));\n }\n\n return maxTicks;\n },\n // Called after the ticks are built. We need\n handleDirectionalChanges: function() {\n if (!this.isHorizontal()) {\n // We are in a vertical orientation. The top value is the highest. So reverse the array\n this.ticks.reverse();\n }\n },\n getLabelForIndex: function(index, datasetIndex) {\n return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]);\n },\n // Utils\n getPixelForValue: function(value) {\n // This must be called after fit has been run so that\n // this.left, this.top, this.right, and this.bottom have been defined\n var me = this;\n var start = me.start;\n\n var rightValue = +me.getRightValue(value);\n var pixel;\n var range = me.end - start;\n\n if (me.isHorizontal()) {\n pixel = me.left + (me.width / range * (rightValue - start));\n return Math.round(pixel);\n }\n\n pixel = me.bottom - (me.height / range * (rightValue - start));\n return Math.round(pixel);\n },\n getValueForPixel: function(pixel) {\n var me = this;\n var isHorizontal = me.isHorizontal();\n var innerDimension = isHorizontal ? me.width : me.height;\n var offset = (isHorizontal ? pixel - me.left : me.bottom - pixel) / innerDimension;\n return me.start + ((me.end - me.start) * offset);\n },\n getPixelForTick: function(index) {\n return this.getPixelForValue(this.ticksAsNumbers[index]);\n }\n });\n Chart.scaleService.registerScaleType('linear', LinearScale, defaultConfig);\n\n};\n\n},{\"25\":25,\"34\":34,\"45\":45}],54:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\nvar Ticks = require(34);\n\nmodule.exports = function(Chart) {\n\n var noop = helpers.noop;\n\n Chart.LinearScaleBase = Chart.Scale.extend({\n getRightValue: function(value) {\n if (typeof value === 'string') {\n return +value;\n }\n return Chart.Scale.prototype.getRightValue.call(this, value);\n },\n\n handleTickRangeOptions: function() {\n var me = this;\n var opts = me.options;\n var tickOpts = opts.ticks;\n\n // If we are forcing it to begin at 0, but 0 will already be rendered on the chart,\n // do nothing since that would make the chart weird. If the user really wants a weird chart\n // axis, they can manually override it\n if (tickOpts.beginAtZero) {\n var minSign = helpers.sign(me.min);\n var maxSign = helpers.sign(me.max);\n\n if (minSign < 0 && maxSign < 0) {\n // move the top up to 0\n me.max = 0;\n } else if (minSign > 0 && maxSign > 0) {\n // move the bottom down to 0\n me.min = 0;\n }\n }\n\n var setMin = tickOpts.min !== undefined || tickOpts.suggestedMin !== undefined;\n var setMax = tickOpts.max !== undefined || tickOpts.suggestedMax !== undefined;\n\n if (tickOpts.min !== undefined) {\n me.min = tickOpts.min;\n } else if (tickOpts.suggestedMin !== undefined) {\n if (me.min === null) {\n me.min = tickOpts.suggestedMin;\n } else {\n me.min = Math.min(me.min, tickOpts.suggestedMin);\n }\n }\n\n if (tickOpts.max !== undefined) {\n me.max = tickOpts.max;\n } else if (tickOpts.suggestedMax !== undefined) {\n if (me.max === null) {\n me.max = tickOpts.suggestedMax;\n } else {\n me.max = Math.max(me.max, tickOpts.suggestedMax);\n }\n }\n\n if (setMin !== setMax) {\n // We set the min or the max but not both.\n // So ensure that our range is good\n // Inverted or 0 length range can happen when\n // ticks.min is set, and no datasets are visible\n if (me.min >= me.max) {\n if (setMin) {\n me.max = me.min + 1;\n } else {\n me.min = me.max - 1;\n }\n }\n }\n\n if (me.min === me.max) {\n me.max++;\n\n if (!tickOpts.beginAtZero) {\n me.min--;\n }\n }\n },\n getTickLimit: noop,\n handleDirectionalChanges: noop,\n\n buildTicks: function() {\n var me = this;\n var opts = me.options;\n var tickOpts = opts.ticks;\n\n // Figure out what the max number of ticks we can support it is based on the size of\n // the axis area. For now, we say that the minimum tick spacing in pixels must be 50\n // We also limit the maximum number of ticks to 11 which gives a nice 10 squares on\n // the graph. Make sure we always have at least 2 ticks\n var maxTicks = me.getTickLimit();\n maxTicks = Math.max(2, maxTicks);\n\n var numericGeneratorOptions = {\n maxTicks: maxTicks,\n min: tickOpts.min,\n max: tickOpts.max,\n stepSize: helpers.valueOrDefault(tickOpts.fixedStepSize, tickOpts.stepSize)\n };\n var ticks = me.ticks = Ticks.generators.linear(numericGeneratorOptions, me);\n\n me.handleDirectionalChanges();\n\n // At this point, we need to update our max and min given the tick values since we have expanded the\n // range of the scale\n me.max = helpers.max(ticks);\n me.min = helpers.min(ticks);\n\n if (tickOpts.reverse) {\n ticks.reverse();\n\n me.start = me.max;\n me.end = me.min;\n } else {\n me.start = me.min;\n me.end = me.max;\n }\n },\n convertTicksToLabels: function() {\n var me = this;\n me.ticksAsNumbers = me.ticks.slice();\n me.zeroLineIndex = me.ticks.indexOf(0);\n\n Chart.Scale.prototype.convertTicksToLabels.call(me);\n }\n });\n};\n\n},{\"34\":34,\"45\":45}],55:[function(require,module,exports){\n'use strict';\n\nvar helpers = require(45);\nvar Ticks = require(34);\n\nmodule.exports = function(Chart) {\n\n var defaultConfig = {\n position: 'left',\n\n // label settings\n ticks: {\n callback: Ticks.formatters.logarithmic\n }\n };\n\n var LogarithmicScale = Chart.Scale.extend({\n determineDataLimits: function() {\n var me = this;\n var opts = me.options;\n var tickOpts = opts.ticks;\n var chart = me.chart;\n var data = chart.data;\n var datasets = data.datasets;\n var valueOrDefault = helpers.valueOrDefault;\n var isHorizontal = me.isHorizontal();\n function IDMatches(meta) {\n return isHorizontal ? meta.xAxisID === me.id : meta.yAxisID === me.id;\n }\n\n // Calculate Range\n me.min = null;\n me.max = null;\n me.minNotZero = null;\n\n var hasStacks = opts.stacked;\n if (hasStacks === undefined) {\n helpers.each(datasets, function(dataset, datasetIndex) {\n if (hasStacks) {\n return;\n }\n\n var meta = chart.getDatasetMeta(datasetIndex);\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta) &&\n meta.stack !== undefined) {\n hasStacks = true;\n }\n });\n }\n\n if (opts.stacked || hasStacks) {\n var valuesPerStack = {};\n\n helpers.each(datasets, function(dataset, datasetIndex) {\n var meta = chart.getDatasetMeta(datasetIndex);\n var key = [\n meta.type,\n // we have a separate stack for stack=undefined datasets when the opts.stacked is undefined\n ((opts.stacked === undefined && meta.stack === undefined) ? datasetIndex : ''),\n meta.stack\n ].join('.');\n\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) {\n if (valuesPerStack[key] === undefined) {\n valuesPerStack[key] = [];\n }\n\n helpers.each(dataset.data, function(rawValue, index) {\n var values = valuesPerStack[key];\n var value = +me.getRightValue(rawValue);\n if (isNaN(value) || meta.data[index].hidden) {\n return;\n }\n\n values[index] = values[index] || 0;\n\n if (opts.relativePoints) {\n values[index] = 100;\n } else {\n // Don't need to split positive and negative since the log scale can't handle a 0 crossing\n values[index] += value;\n }\n });\n }\n });\n\n helpers.each(valuesPerStack, function(valuesForType) {\n var minVal = helpers.min(valuesForType);\n var maxVal = helpers.max(valuesForType);\n me.min = me.min === null ? minVal : Math.min(me.min, minVal);\n me.max = me.max === null ? maxVal : Math.max(me.max, maxVal);\n });\n\n } else {\n helpers.each(datasets, function(dataset, datasetIndex) {\n var meta = chart.getDatasetMeta(datasetIndex);\n if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) {\n helpers.each(dataset.data, function(rawValue, index) {\n var value = +me.getRightValue(rawValue);\n if (isNaN(value) || meta.data[index].hidden) {\n return;\n }\n\n if (me.min === null) {\n me.min = value;\n } else if (value < me.min) {\n me.min = value;\n }\n\n if (me.max === null) {\n me.max = value;\n } else if (value > me.max) {\n me.max = value;\n }\n\n if (value !== 0 && (me.minNotZero === null || value < me.minNotZero)) {\n me.minNotZero = value;\n }\n });\n }\n });\n }\n\n me.min = valueOrDefault(tickOpts.min, me.min);\n me.max = valueOrDefault(tickOpts.max, me.max);\n\n if (me.min === me.max) {\n if (me.min !== 0 && me.min !== null) {\n me.min = Math.pow(10, Math.floor(helpers.log10(me.min)) - 1);\n me.max = Math.pow(10, Math.floor(helpers.log10(me.max)) + 1);\n } else {\n me.min = 1;\n me.max = 10;\n }\n }\n },\n buildTicks: function() {\n var me = this;\n var opts = me.options;\n var tickOpts = opts.ticks;\n\n var generationOptions = {\n min: tickOpts.min,\n max: tickOpts.max\n };\n var ticks = me.ticks = Ticks.generators.logarithmic(generationOptions, me);\n\n if (!me.isHorizontal()) {\n // We are in a vertical orientation. The top value is the highest. So reverse the array\n ticks.reverse();\n }\n\n // At this point, we need to update our max and min given the tick values since we have expanded the\n // range of the scale\n me.max = helpers.max(ticks);\n me.min = helpers.min(ticks);\n\n if (tickOpts.reverse) {\n ticks.reverse();\n\n me.start = me.max;\n me.end = me.min;\n } else {\n me.start = me.min;\n me.end = me.max;\n }\n },\n convertTicksToLabels: function() {\n this.tickValues = this.ticks.slice();\n\n Chart.Scale.prototype.convertTicksToLabels.call(this);\n },\n // Get the correct tooltip label\n getLabelForIndex: function(index, datasetIndex) {\n return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]);\n },\n getPixelForTick: function(index) {\n return this.getPixelForValue(this.tickValues[index]);\n },\n getPixelForValue: function(value) {\n var me = this;\n var start = me.start;\n var newVal = +me.getRightValue(value);\n var opts = me.options;\n var tickOpts = opts.ticks;\n var innerDimension, pixel, range;\n\n if (me.isHorizontal()) {\n range = helpers.log10(me.end) - helpers.log10(start); // todo: if start === 0\n if (newVal === 0) {\n pixel = me.left;\n } else {\n innerDimension = me.width;\n pixel = me.left + (innerDimension / range * (helpers.log10(newVal) - helpers.log10(start)));\n }\n } else {\n // Bottom - top since pixels increase downward on a screen\n innerDimension = me.height;\n if (start === 0 && !tickOpts.reverse) {\n range = helpers.log10(me.end) - helpers.log10(me.minNotZero);\n if (newVal === start) {\n pixel = me.bottom;\n } else if (newVal === me.minNotZero) {\n pixel = me.bottom - innerDimension * 0.02;\n } else {\n pixel = me.bottom - innerDimension * 0.02 - (innerDimension * 0.98 / range * (helpers.log10(newVal) - helpers.log10(me.minNotZero)));\n }\n } else if (me.end === 0 && tickOpts.reverse) {\n range = helpers.log10(me.start) - helpers.log10(me.minNotZero);\n if (newVal === me.end) {\n pixel = me.top;\n } else if (newVal === me.minNotZero) {\n pixel = me.top + innerDimension * 0.02;\n } else {\n pixel = me.top + innerDimension * 0.02 + (innerDimension * 0.98 / range * (helpers.log10(newVal) - helpers.log10(me.minNotZero)));\n }\n } else if (newVal === 0) {\n pixel = tickOpts.reverse ? me.top : me.bottom;\n } else {\n range = helpers.log10(me.end) - helpers.log10(start);\n innerDimension = me.height;\n pixel = me.bottom - (innerDimension / range * (helpers.log10(newVal) - helpers.log10(start)));\n }\n }\n return pixel;\n },\n getValueForPixel: function(pixel) {\n var me = this;\n var range = helpers.log10(me.end) - helpers.log10(me.start);\n var value, innerDimension;\n\n if (me.isHorizontal()) {\n innerDimension = me.width;\n value = me.start * Math.pow(10, (pixel - me.left) * range / innerDimension);\n } else { // todo: if start === 0\n innerDimension = me.height;\n value = Math.pow(10, (me.bottom - pixel) * range / innerDimension) / me.start;\n }\n return value;\n }\n });\n Chart.scaleService.registerScaleType('logarithmic', LogarithmicScale, defaultConfig);\n\n};\n\n},{\"34\":34,\"45\":45}],56:[function(require,module,exports){\n'use strict';\n\nvar defaults = require(25);\nvar helpers = require(45);\nvar Ticks = require(34);\n\nmodule.exports = function(Chart) {\n\n var globalDefaults = defaults.global;\n\n var defaultConfig = {\n display: true,\n\n // Boolean - Whether to animate scaling the chart from the centre\n animate: true,\n position: 'chartArea',\n\n angleLines: {\n display: true,\n color: 'rgba(0, 0, 0, 0.1)',\n lineWidth: 1\n },\n\n gridLines: {\n circular: false\n },\n\n // label settings\n ticks: {\n // Boolean - Show a backdrop to the scale label\n showLabelBackdrop: true,\n\n // String - The colour of the label backdrop\n backdropColor: 'rgba(255,255,255,0.75)',\n\n // Number - The backdrop padding above & below the label in pixels\n backdropPaddingY: 2,\n\n // Number - The backdrop padding to the side of the label in pixels\n backdropPaddingX: 2,\n\n callback: Ticks.formatters.linear\n },\n\n pointLabels: {\n // Boolean - if true, show point labels\n display: true,\n\n // Number - Point label font size in pixels\n fontSize: 10,\n\n // Function - Used to convert point labels\n callback: function(label) {\n return label;\n }\n }\n };\n\n function getValueCount(scale) {\n var opts = scale.options;\n return opts.angleLines.display || opts.pointLabels.display ? scale.chart.data.labels.length : 0;\n }\n\n function getPointLabelFontOptions(scale) {\n var pointLabelOptions = scale.options.pointLabels;\n var fontSize = helpers.valueOrDefault(pointLabelOptions.fontSize, globalDefaults.defaultFontSize);\n var fontStyle = helpers.valueOrDefault(pointLabelOptions.fontStyle, globalDefaults.defaultFontStyle);\n var fontFamily = helpers.valueOrDefault(pointLabelOptions.fontFamily, globalDefaults.defaultFontFamily);\n var font = helpers.fontString(fontSize, fontStyle, fontFamily);\n\n return {\n size: fontSize,\n style: fontStyle,\n family: fontFamily,\n font: font\n };\n }\n\n function measureLabelSize(ctx, fontSize, label) {\n if (helpers.isArray(label)) {\n return {\n w: helpers.longestText(ctx, ctx.font, label),\n h: (label.length * fontSize) + ((label.length - 1) * 1.5 * fontSize)\n };\n }\n\n return {\n w: ctx.measureText(label).width,\n h: fontSize\n };\n }\n\n function determineLimits(angle, pos, size, min, max) {\n if (angle === min || angle === max) {\n return {\n start: pos - (size / 2),\n end: pos + (size / 2)\n };\n } else if (angle < min || angle > max) {\n return {\n start: pos - size - 5,\n end: pos\n };\n }\n\n return {\n start: pos,\n end: pos + size + 5\n };\n }\n\n /**\n * Helper function to fit a radial linear scale with point labels\n */\n function fitWithPointLabels(scale) {\n /*\n * Right, this is really confusing and there is a lot of maths going on here\n * The gist of the problem is here: https://gist.github.com/nnnick/696cc9c55f4b0beb8fe9\n *\n * Reaction: https://dl.dropboxusercontent.com/u/34601363/toomuchscience.gif\n *\n * Solution:\n *\n * We assume the radius of the polygon is half the size of the canvas at first\n * at each index we check if the text overlaps.\n *\n * Where it does, we store that angle and that index.\n *\n * After finding the largest index and angle we calculate how much we need to remove\n * from the shape radius to move the point inwards by that x.\n *\n * We average the left and right distances to get the maximum shape radius that can fit in the box\n * along with labels.\n *\n * Once we have that, we can find the centre point for the chart, by taking the x text protrusion\n * on each side, removing that from the size, halving it and adding the left x protrusion width.\n *\n * This will mean we have a shape fitted to the canvas, as large as it can be with the labels\n * and position it in the most space efficient manner\n *\n * https://dl.dropboxusercontent.com/u/34601363/yeahscience.gif\n */\n\n var plFont = getPointLabelFontOptions(scale);\n\n // Get maximum radius of the polygon. Either half the height (minus the text width) or half the width.\n // Use this to calculate the offset + change. - Make sure L/R protrusion is at least 0 to stop issues with centre points\n var largestPossibleRadius = Math.min(scale.height / 2, scale.width / 2);\n var furthestLimits = {\n r: scale.width,\n l: 0,\n t: scale.height,\n b: 0\n };\n var furthestAngles = {};\n var i, textSize, pointPosition;\n\n scale.ctx.font = plFont.font;\n scale._pointLabelSizes = [];\n\n var valueCount = getValueCount(scale);\n for (i = 0; i < valueCount; i++) {\n pointPosition = scale.getPointPosition(i, largestPossibleRadius);\n textSize = measureLabelSize(scale.ctx, plFont.size, scale.pointLabels[i] || '');\n scale._pointLabelSizes[i] = textSize;\n\n // Add quarter circle to make degree 0 mean top of circle\n var angleRadians = scale.getIndexAngle(i);\n var angle = helpers.toDegrees(angleRadians) % 360;\n var hLimits = determineLimits(angle, pointPosition.x, textSize.w, 0, 180);\n var vLimits = determineLimits(angle, pointPosition.y, textSize.h, 90, 270);\n\n if (hLimits.start < furthestLimits.l) {\n furthestLimits.l = hLimits.start;\n furthestAngles.l = angleRadians;\n }\n\n if (hLimits.end > furthestLimits.r) {\n furthestLimits.r = hLimits.end;\n furthestAngles.r = angleRadians;\n }\n\n if (vLimits.start < furthestLimits.t) {\n furthestLimits.t = vLimits.start;\n furthestAngles.t = angleRadians;\n }\n\n if (vLimits.end > furthestLimits.b) {\n furthestLimits.b = vLimits.end;\n furthestAngles.b = angleRadians;\n }\n }\n\n scale.setReductions(largestPossibleRadius, furthestLimits, furthestAngles);\n }\n\n /**\n * Helper function to fit a radial linear scale with no point labels\n */\n function fit(scale) {\n var largestPossibleRadius = Math.min(scale.height / 2, scale.width / 2);\n scale.drawingArea = Math.round(largestPossibleRadius);\n scale.setCenterPoint(0, 0, 0, 0);\n }\n\n function getTextAlignForAngle(angle) {\n if (angle === 0 || angle === 180) {\n return 'center';\n } else if (angle < 180) {\n return 'left';\n }\n\n return 'right';\n }\n\n function fillText(ctx, text, position, fontSize) {\n if (helpers.isArray(text)) {\n var y = position.y;\n var spacing = 1.5 * fontSize;\n\n for (var i = 0; i < text.length; ++i) {\n ctx.fillText(text[i], position.x, y);\n y += spacing;\n }\n } else {\n ctx.fillText(text, position.x, position.y);\n }\n }\n\n function adjustPointPositionForLabelHeight(angle, textSize, position) {\n if (angle === 90 || angle === 270) {\n position.y -= (textSize.h / 2);\n } else if (angle > 270 || angle < 90) {\n position.y -= textSize.h;\n }\n }\n\n function drawPointLabels(scale) {\n var ctx = scale.ctx;\n var valueOrDefault = helpers.valueOrDefault;\n var opts = scale.options;\n var angleLineOpts = opts.angleLines;\n var pointLabelOpts = opts.pointLabels;\n\n ctx.lineWidth = angleLineOpts.lineWidth;\n ctx.strokeStyle = angleLineOpts.color;\n\n var outerDistance = scale.getDistanceFromCenterForValue(opts.ticks.reverse ? scale.min : scale.max);\n\n // Point Label Font\n var plFont = getPointLabelFontOptions(scale);\n\n ctx.textBaseline = 'top';\n\n for (var i = getValueCount(scale) - 1; i >= 0; i--) {\n if (angleLineOpts.display) {\n var outerPosition = scale.getPointPosition(i, outerDistance);\n ctx.beginPath();\n ctx.moveTo(scale.xCenter, scale.yCenter);\n ctx.lineTo(outerPosition.x, outerPosition.y);\n ctx.stroke();\n ctx.closePath();\n }\n\n if (pointLabelOpts.display) {\n // Extra 3px out for some label spacing\n var pointLabelPosition = scale.getPointPosition(i, outerDistance + 5);\n\n // Keep this in loop since we may support array properties here\n var pointLabelFontColor = valueOrDefault(pointLabelOpts.fontColor, globalDefaults.defaultFontColor);\n ctx.font = plFont.font;\n ctx.fillStyle = pointLabelFontColor;\n\n var angleRadians = scale.getIndexAngle(i);\n var angle = helpers.toDegrees(angleRadians);\n ctx.textAlign = getTextAlignForAngle(angle);\n adjustPointPositionForLabelHeight(angle, scale._pointLabelSizes[i], pointLabelPosition);\n fillText(ctx, scale.pointLabels[i] || '', pointLabelPosition, plFont.size);\n }\n }\n }\n\n function drawRadiusLine(scale, gridLineOpts, radius, index) {\n var ctx = scale.ctx;\n ctx.strokeStyle = helpers.valueAtIndexOrDefault(gridLineOpts.color, index - 1);\n ctx.lineWidth = helpers.valueAtIndexOrDefault(gridLineOpts.lineWidth, index - 1);\n\n if (scale.options.gridLines.circular) {\n // Draw circular arcs between the points\n ctx.beginPath();\n ctx.arc(scale.xCenter, scale.yCenter, radius, 0, Math.PI * 2);\n ctx.closePath();\n ctx.stroke();\n } else {\n // Draw straight lines connecting each index\n var valueCount = getValueCount(scale);\n\n if (valueCount === 0) {\n return;\n }\n\n ctx.beginPath();\n var pointPosition = scale.getPointPosition(0, radius);\n ctx.moveTo(pointPosition.x, pointPosition.y);\n\n for (var i = 1; i < valueCount; i++) {\n pointPosition = scale.getPointPosition(i, radius);\n ctx.lineTo(pointPosition.x, pointPosition.y);\n }\n\n ctx.closePath();\n ctx.stroke();\n }\n }\n\n function numberOrZero(param) {\n return helpers.isNumber(param) ? param : 0;\n }\n\n var LinearRadialScale = Chart.LinearScaleBase.extend({\n setDimensions: function() {\n var me = this;\n var opts = me.options;\n var tickOpts = opts.ticks;\n // Set the unconstrained dimension before label rotation\n me.width = me.maxWidth;\n me.height = me.maxHeight;\n me.xCenter = Math.round(me.width / 2);\n me.yCenter = Math.round(me.height / 2);\n\n var minSize = helpers.min([me.height, me.width]);\n var tickFontSize = helpers.valueOrDefault(tickOpts.fontSize, globalDefaults.defaultFontSize);\n me.drawingArea = opts.display ? (minSize / 2) - (tickFontSize / 2 + tickOpts.backdropPaddingY) : (minSize / 2);\n },\n determineDataLimits: function() {\n var me = this;\n var chart = me.chart;\n var min = Number.POSITIVE_INFINITY;\n var max = Number.NEGATIVE_INFINITY;\n\n helpers.each(chart.data.datasets, function(dataset, datasetIndex) {\n if (chart.isDatasetVisible(datasetIndex)) {\n var meta = chart.getDatasetMeta(datasetIndex);\n\n helpers.each(dataset.data, function(rawValue, index) {\n var value = +me.getRightValue(rawValue);\n if (isNaN(value) || meta.data[index].hidden) {\n return;\n }\n\n min = Math.min(value, min);\n max = Math.max(value, max);\n });\n }\n });\n\n me.min = (min === Number.POSITIVE_INFINITY ? 0 : min);\n me.max = (max === Number.NEGATIVE_INFINITY ? 0 : max);\n\n // Common base implementation to handle ticks.min, ticks.max, ticks.beginAtZero\n me.handleTickRangeOptions();\n },\n getTickLimit: function() {\n var tickOpts = this.options.ticks;\n var tickFontSize = helpers.valueOrDefault(tickOpts.fontSize, globalDefaults.defaultFontSize);\n return Math.min(tickOpts.maxTicksLimit ? tickOpts.maxTicksLimit : 11, Math.ceil(this.drawingArea / (1.5 * tickFontSize)));\n },\n convertTicksToLabels: function() {\n var me = this;\n\n Chart.LinearScaleBase.prototype.convertTicksToLabels.call(me);\n\n // Point labels\n me.pointLabels = me.chart.data.labels.map(me.options.pointLabels.callback, me);\n },\n getLabelForIndex: function(index, datasetIndex) {\n return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]);\n },\n fit: function() {\n if (this.options.pointLabels.display) {\n fitWithPointLabels(this);\n } else {\n fit(this);\n }\n },\n /**\n * Set radius reductions and determine new radius and center point\n * @private\n */\n setReductions: function(largestPossibleRadius, furthestLimits, furthestAngles) {\n var me = this;\n var radiusReductionLeft = furthestLimits.l / Math.sin(furthestAngles.l);\n var radiusReductionRight = Math.max(furthestLimits.r - me.width, 0) / Math.sin(furthestAngles.r);\n var radiusReductionTop = -furthestLimits.t / Math.cos(furthestAngles.t);\n var radiusReductionBottom = -Math.max(furthestLimits.b - me.height, 0) / Math.cos(furthestAngles.b);\n\n radiusReductionLeft = numberOrZero(radiusReductionLeft);\n radiusReductionRight = numberOrZero(radiusReductionRight);\n radiusReductionTop = numberOrZero(radiusReductionTop);\n radiusReductionBottom = numberOrZero(radiusReductionBottom);\n\n me.drawingArea = Math.min(\n Math.round(largestPossibleRadius - (radiusReductionLeft + radiusReductionRight) / 2),\n Math.round(largestPossibleRadius - (radiusReductionTop + radiusReductionBottom) / 2));\n me.setCenterPoint(radiusReductionLeft, radiusReductionRight, radiusReductionTop, radiusReductionBottom);\n },\n setCenterPoint: function(leftMovement, rightMovement, topMovement, bottomMovement) {\n var me = this;\n var maxRight = me.width - rightMovement - me.drawingArea;\n var maxLeft = leftMovement + me.drawingArea;\n var maxTop = topMovement + me.drawingArea;\n var maxBottom = me.height - bottomMovement - me.drawingArea;\n\n me.xCenter = Math.round(((maxLeft + maxRight) / 2) + me.left);\n me.yCenter = Math.round(((maxTop + maxBottom) / 2) + me.top);\n },\n\n getIndexAngle: function(index) {\n var angleMultiplier = (Math.PI * 2) / getValueCount(this);\n var startAngle = this.chart.options && this.chart.options.startAngle ?\n this.chart.options.startAngle :\n 0;\n\n var startAngleRadians = startAngle * Math.PI * 2 / 360;\n\n // Start from the top instead of right, so remove a quarter of the circle\n return index * angleMultiplier + startAngleRadians;\n },\n getDistanceFromCenterForValue: function(value) {\n var me = this;\n\n if (value === null) {\n return 0; // null always in center\n }\n\n // Take into account half font size + the yPadding of the top value\n var scalingFactor = me.drawingArea / (me.max - me.min);\n if (me.options.ticks.reverse) {\n return (me.max - value) * scalingFactor;\n }\n return (value - me.min) * scalingFactor;\n },\n getPointPosition: function(index, distanceFromCenter) {\n var me = this;\n var thisAngle = me.getIndexAngle(index) - (Math.PI / 2);\n return {\n x: Math.round(Math.cos(thisAngle) * distanceFromCenter) + me.xCenter,\n y: Math.round(Math.sin(thisAngle) * distanceFromCenter) + me.yCenter\n };\n },\n getPointPositionForValue: function(index, value) {\n return this.getPointPosition(index, this.getDistanceFromCenterForValue(value));\n },\n\n getBasePosition: function() {\n var me = this;\n var min = me.min;\n var max = me.max;\n\n return me.getPointPositionForValue(0,\n me.beginAtZero ? 0 :\n min < 0 && max < 0 ? max :\n min > 0 && max > 0 ? min :\n 0);\n },\n\n draw: function() {\n var me = this;\n var opts = me.options;\n var gridLineOpts = opts.gridLines;\n var tickOpts = opts.ticks;\n var valueOrDefault = helpers.valueOrDefault;\n\n if (opts.display) {\n var ctx = me.ctx;\n var startAngle = this.getIndexAngle(0);\n\n // Tick Font\n var tickFontSize = valueOrDefault(tickOpts.fontSize, globalDefaults.defaultFontSize);\n var tickFontStyle = valueOrDefault(tickOpts.fontStyle, globalDefaults.defaultFontStyle);\n var tickFontFamily = valueOrDefault(tickOpts.fontFamily, globalDefaults.defaultFontFamily);\n var tickLabelFont = helpers.fontString(tickFontSize, tickFontStyle, tickFontFamily);\n\n helpers.each(me.ticks, function(label, index) {\n // Don't draw a centre value (if it is minimum)\n if (index > 0 || tickOpts.reverse) {\n var yCenterOffset = me.getDistanceFromCenterForValue(me.ticksAsNumbers[index]);\n\n // Draw circular lines around the scale\n if (gridLineOpts.display && index !== 0) {\n drawRadiusLine(me, gridLineOpts, yCenterOffset, index);\n }\n\n if (tickOpts.display) {\n var tickFontColor = valueOrDefault(tickOpts.fontColor, globalDefaults.defaultFontColor);\n ctx.font = tickLabelFont;\n\n ctx.save();\n ctx.translate(me.xCenter, me.yCenter);\n ctx.rotate(startAngle);\n\n if (tickOpts.showLabelBackdrop) {\n var labelWidth = ctx.measureText(label).width;\n ctx.fillStyle = tickOpts.backdropColor;\n ctx.fillRect(\n -labelWidth / 2 - tickOpts.backdropPaddingX,\n -yCenterOffset - tickFontSize / 2 - tickOpts.backdropPaddingY,\n labelWidth + tickOpts.backdropPaddingX * 2,\n tickFontSize + tickOpts.backdropPaddingY * 2\n );\n }\n\n ctx.textAlign = 'center';\n ctx.textBaseline = 'middle';\n ctx.fillStyle = tickFontColor;\n ctx.fillText(label, 0, -yCenterOffset);\n ctx.restore();\n }\n }\n });\n\n if (opts.angleLines.display || opts.pointLabels.display) {\n drawPointLabels(me);\n }\n }\n }\n });\n Chart.scaleService.registerScaleType('radialLinear', LinearRadialScale, defaultConfig);\n\n};\n\n},{\"25\":25,\"34\":34,\"45\":45}],57:[function(require,module,exports){\n/* global window: false */\n'use strict';\n\nvar moment = require(6);\nmoment = typeof moment === 'function' ? moment : window.moment;\n\nvar defaults = require(25);\nvar helpers = require(45);\n\n// Integer constants are from the ES6 spec.\nvar MIN_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;\nvar MAX_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;\n\nvar INTERVALS = {\n millisecond: {\n common: true,\n size: 1,\n steps: [1, 2, 5, 10, 20, 50, 100, 250, 500]\n },\n second: {\n common: true,\n size: 1000,\n steps: [1, 2, 5, 10, 30]\n },\n minute: {\n common: true,\n size: 60000,\n steps: [1, 2, 5, 10, 30]\n },\n hour: {\n common: true,\n size: 3600000,\n steps: [1, 2, 3, 6, 12]\n },\n day: {\n common: true,\n size: 86400000,\n steps: [1, 2, 5]\n },\n week: {\n common: false,\n size: 604800000,\n steps: [1, 2, 3, 4]\n },\n month: {\n common: true,\n size: 2.628e9,\n steps: [1, 2, 3]\n },\n quarter: {\n common: false,\n size: 7.884e9,\n steps: [1, 2, 3, 4]\n },\n year: {\n common: true,\n size: 3.154e10\n }\n};\n\nvar UNITS = Object.keys(INTERVALS);\n\nfunction sorter(a, b) {\n return a - b;\n}\n\nfunction arrayUnique(items) {\n var hash = {};\n var out = [];\n var i, ilen, item;\n\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n item = items[i];\n if (!hash[item]) {\n hash[item] = true;\n out.push(item);\n }\n }\n\n return out;\n}\n\n/**\n * Returns an array of {time, pos} objects used to interpolate a specific `time` or position\n * (`pos`) on the scale, by searching entries before and after the requested value. `pos` is\n * a decimal between 0 and 1: 0 being the start of the scale (left or top) and 1 the other\n * extremity (left + width or top + height). Note that it would be more optimized to directly\n * store pre-computed pixels, but the scale dimensions are not guaranteed at the time we need\n * to create the lookup table. The table ALWAYS contains at least two items: min and max.\n *\n * @param {Number[]} timestamps - timestamps sorted from lowest to highest.\n * @param {String} distribution - If 'linear', timestamps will be spread linearly along the min\n * and max range, so basically, the table will contains only two items: {min, 0} and {max, 1}.\n * If 'series', timestamps will be positioned at the same distance from each other. In this\n * case, only timestamps that break the time linearity are registered, meaning that in the\n * best case, all timestamps are linear, the table contains only min and max.\n */\nfunction buildLookupTable(timestamps, min, max, distribution) {\n if (distribution === 'linear' || !timestamps.length) {\n return [\n {time: min, pos: 0},\n {time: max, pos: 1}\n ];\n }\n\n var table = [];\n var items = [min];\n var i, ilen, prev, curr, next;\n\n for (i = 0, ilen = timestamps.length; i < ilen; ++i) {\n curr = timestamps[i];\n if (curr > min && curr < max) {\n items.push(curr);\n }\n }\n\n items.push(max);\n\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n next = items[i + 1];\n prev = items[i - 1];\n curr = items[i];\n\n // only add points that breaks the scale linearity\n if (prev === undefined || next === undefined || Math.round((next + prev) / 2) !== curr) {\n table.push({time: curr, pos: i / (ilen - 1)});\n }\n }\n\n return table;\n}\n\n// @see adapted from http://www.anujgakhar.com/2014/03/01/binary-search-in-javascript/\nfunction lookup(table, key, value) {\n var lo = 0;\n var hi = table.length - 1;\n var mid, i0, i1;\n\n while (lo >= 0 && lo <= hi) {\n mid = (lo + hi) >> 1;\n i0 = table[mid - 1] || null;\n i1 = table[mid];\n\n if (!i0) {\n // given value is outside table (before first item)\n return {lo: null, hi: i1};\n } else if (i1[key] < value) {\n lo = mid + 1;\n } else if (i0[key] > value) {\n hi = mid - 1;\n } else {\n return {lo: i0, hi: i1};\n }\n }\n\n // given value is outside table (after last item)\n return {lo: i1, hi: null};\n}\n\n/**\n * Linearly interpolates the given source `value` using the table items `skey` values and\n * returns the associated `tkey` value. For example, interpolate(table, 'time', 42, 'pos')\n * returns the position for a timestamp equal to 42. If value is out of bounds, values at\n * index [0, 1] or [n - 1, n] are used for the interpolation.\n */\nfunction interpolate(table, skey, sval, tkey) {\n var range = lookup(table, skey, sval);\n\n // Note: the lookup table ALWAYS contains at least 2 items (min and max)\n var prev = !range.lo ? table[0] : !range.hi ? table[table.length - 2] : range.lo;\n var next = !range.lo ? table[1] : !range.hi ? table[table.length - 1] : range.hi;\n\n var span = next[skey] - prev[skey];\n var ratio = span ? (sval - prev[skey]) / span : 0;\n var offset = (next[tkey] - prev[tkey]) * ratio;\n\n return prev[tkey] + offset;\n}\n\n/**\n * Convert the given value to a moment object using the given time options.\n * @see http://momentjs.com/docs/#/parsing/\n */\nfunction momentify(value, options) {\n var parser = options.parser;\n var format = options.parser || options.format;\n\n if (typeof parser === 'function') {\n return parser(value);\n }\n\n if (typeof value === 'string' && typeof format === 'string') {\n return moment(value, format);\n }\n\n if (!(value instanceof moment)) {\n value = moment(value);\n }\n\n if (value.isValid()) {\n return value;\n }\n\n // Labels are in an incompatible moment format and no `parser` has been provided.\n // The user might still use the deprecated `format` option to convert his inputs.\n if (typeof format === 'function') {\n return format(value);\n }\n\n return value;\n}\n\nfunction parse(input, scale) {\n if (helpers.isNullOrUndef(input)) {\n return null;\n }\n\n var options = scale.options.time;\n var value = momentify(scale.getRightValue(input), options);\n if (!value.isValid()) {\n return null;\n }\n\n if (options.round) {\n value.startOf(options.round);\n }\n\n return value.valueOf();\n}\n\n/**\n * Returns the number of unit to skip to be able to display up to `capacity` number of ticks\n * in `unit` for the given `min` / `max` range and respecting the interval steps constraints.\n */\nfunction determineStepSize(min, max, unit, capacity) {\n var range = max - min;\n var interval = INTERVALS[unit];\n var milliseconds = interval.size;\n var steps = interval.steps;\n var i, ilen, factor;\n\n if (!steps) {\n return Math.ceil(range / ((capacity || 1) * milliseconds));\n }\n\n for (i = 0, ilen = steps.length; i < ilen; ++i) {\n factor = steps[i];\n if (Math.ceil(range / (milliseconds * factor)) <= capacity) {\n break;\n }\n }\n\n return factor;\n}\n\n/**\n * Figures out what unit results in an appropriate number of auto-generated ticks\n */\nfunction determineUnitForAutoTicks(minUnit, min, max, capacity) {\n var ilen = UNITS.length;\n var i, interval, factor;\n\n for (i = UNITS.indexOf(minUnit); i < ilen - 1; ++i) {\n interval = INTERVALS[UNITS[i]];\n factor = interval.steps ? interval.steps[interval.steps.length - 1] : MAX_INTEGER;\n\n if (interval.common && Math.ceil((max - min) / (factor * interval.size)) <= capacity) {\n return UNITS[i];\n }\n }\n\n return UNITS[ilen - 1];\n}\n\n/**\n * Figures out what unit to format a set of ticks with\n */\nfunction determineUnitForFormatting(ticks, minUnit, min, max) {\n var duration = moment.duration(moment(max).diff(moment(min)));\n var ilen = UNITS.length;\n var i, unit;\n\n for (i = ilen - 1; i >= UNITS.indexOf(minUnit); i--) {\n unit = UNITS[i];\n if (INTERVALS[unit].common && duration.as(unit) >= ticks.length) {\n return unit;\n }\n }\n\n return UNITS[minUnit ? UNITS.indexOf(minUnit) : 0];\n}\n\nfunction determineMajorUnit(unit) {\n for (var i = UNITS.indexOf(unit) + 1, ilen = UNITS.length; i < ilen; ++i) {\n if (INTERVALS[UNITS[i]].common) {\n return UNITS[i];\n }\n }\n}\n\n/**\n * Generates a maximum of `capacity` timestamps between min and max, rounded to the\n * `minor` unit, aligned on the `major` unit and using the given scale time `options`.\n * Important: this method can return ticks outside the min and max range, it's the\n * responsibility of the calling code to clamp values if needed.\n */\nfunction generate(min, max, capacity, options) {\n var timeOpts = options.time;\n var minor = timeOpts.unit || determineUnitForAutoTicks(timeOpts.minUnit, min, max, capacity);\n var major = determineMajorUnit(minor);\n var stepSize = helpers.valueOrDefault(timeOpts.stepSize, timeOpts.unitStepSize);\n var weekday = minor === 'week' ? timeOpts.isoWeekday : false;\n var majorTicksEnabled = options.ticks.major.enabled;\n var interval = INTERVALS[minor];\n var first = moment(min);\n var last = moment(max);\n var ticks = [];\n var time;\n\n if (!stepSize) {\n stepSize = determineStepSize(min, max, minor, capacity);\n }\n\n // For 'week' unit, handle the first day of week option\n if (weekday) {\n first = first.isoWeekday(weekday);\n last = last.isoWeekday(weekday);\n }\n\n // Align first/last ticks on unit\n first = first.startOf(weekday ? 'day' : minor);\n last = last.startOf(weekday ? 'day' : minor);\n\n // Make sure that the last tick include max\n if (last < max) {\n last.add(1, minor);\n }\n\n time = moment(first);\n\n if (majorTicksEnabled && major && !weekday && !timeOpts.round) {\n // Align the first tick on the previous `minor` unit aligned on the `major` unit:\n // we first aligned time on the previous `major` unit then add the number of full\n // stepSize there is between first and the previous major time.\n time.startOf(major);\n time.add(~~((first - time) / (interval.size * stepSize)) * stepSize, minor);\n }\n\n for (; time < last; time.add(stepSize, minor)) {\n ticks.push(+time);\n }\n\n ticks.push(+time);\n\n return ticks;\n}\n\n/**\n * Returns the right and left offsets from edges in the form of {left, right}.\n * Offsets are added when the `offset` option is true.\n */\nfunction computeOffsets(table, ticks, min, max, options) {\n var left = 0;\n var right = 0;\n var upper, lower;\n\n if (options.offset && ticks.length) {\n if (!options.time.min) {\n upper = ticks.length > 1 ? ticks[1] : max;\n lower = ticks[0];\n left = (\n interpolate(table, 'time', upper, 'pos') -\n interpolate(table, 'time', lower, 'pos')\n ) / 2;\n }\n if (!options.time.max) {\n upper = ticks[ticks.length - 1];\n lower = ticks.length > 1 ? ticks[ticks.length - 2] : min;\n right = (\n interpolate(table, 'time', upper, 'pos') -\n interpolate(table, 'time', lower, 'pos')\n ) / 2;\n }\n }\n\n return {left: left, right: right};\n}\n\nfunction ticksFromTimestamps(values, majorUnit) {\n var ticks = [];\n var i, ilen, value, major;\n\n for (i = 0, ilen = values.length; i < ilen; ++i) {\n value = values[i];\n major = majorUnit ? value === +moment(value).startOf(majorUnit) : false;\n\n ticks.push({\n value: value,\n major: major\n });\n }\n\n return ticks;\n}\n\nmodule.exports = function(Chart) {\n\n var defaultConfig = {\n position: 'bottom',\n\n /**\n * Data distribution along the scale:\n * - 'linear': data are spread according to their time (distances can vary),\n * - 'series': data are spread at the same distance from each other.\n * @see https://github.com/chartjs/Chart.js/pull/4507\n * @since 2.7.0\n */\n distribution: 'linear',\n\n /**\n * Scale boundary strategy (bypassed by min/max time options)\n * - `data`: make sure data are fully visible, ticks outside are removed\n * - `ticks`: make sure ticks are fully visible, data outside are truncated\n * @see https://github.com/chartjs/Chart.js/pull/4556\n * @since 2.7.0\n */\n bounds: 'data',\n\n time: {\n parser: false, // false == a pattern string from http://momentjs.com/docs/#/parsing/string-format/ or a custom callback that converts its argument to a moment\n format: false, // DEPRECATED false == date objects, moment object, callback or a pattern string from http://momentjs.com/docs/#/parsing/string-format/\n unit: false, // false == automatic or override with week, month, year, etc.\n round: false, // none, or override with week, month, year, etc.\n displayFormat: false, // DEPRECATED\n isoWeekday: false, // override week start day - see http://momentjs.com/docs/#/get-set/iso-weekday/\n minUnit: 'millisecond',\n\n // defaults to unit's corresponding unitFormat below or override using pattern string from http://momentjs.com/docs/#/displaying/format/\n displayFormats: {\n millisecond: 'h:mm:ss.SSS a', // 11:20:01.123 AM,\n second: 'h:mm:ss a', // 11:20:01 AM\n minute: 'h:mm a', // 11:20 AM\n hour: 'hA', // 5PM\n day: 'MMM D', // Sep 4\n week: 'll', // Week 46, or maybe \"[W]WW - YYYY\" ?\n month: 'MMM YYYY', // Sept 2015\n quarter: '[Q]Q - YYYY', // Q3\n year: 'YYYY' // 2015\n },\n },\n ticks: {\n autoSkip: false,\n\n /**\n * Ticks generation input values:\n * - 'auto': generates \"optimal\" ticks based on scale size and time options.\n * - 'data': generates ticks from data (including labels from data {t|x|y} objects).\n * - 'labels': generates ticks from user given `data.labels` values ONLY.\n * @see https://github.com/chartjs/Chart.js/pull/4507\n * @since 2.7.0\n */\n source: 'auto',\n\n major: {\n enabled: false\n }\n }\n };\n\n var TimeScale = Chart.Scale.extend({\n initialize: function() {\n if (!moment) {\n throw new Error('Chart.js - Moment.js could not be found! You must include it before Chart.js to use the time scale. Download at https://momentjs.com');\n }\n\n this.mergeTicksOptions();\n\n Chart.Scale.prototype.initialize.call(this);\n },\n\n update: function() {\n var me = this;\n var options = me.options;\n\n // DEPRECATIONS: output a message only one time per update\n if (options.time && options.time.format) {\n console.warn('options.time.format is deprecated and replaced by options.time.parser.');\n }\n\n return Chart.Scale.prototype.update.apply(me, arguments);\n },\n\n /**\n * Allows data to be referenced via 't' attribute\n */\n getRightValue: function(rawValue) {\n if (rawValue && rawValue.t !== undefined) {\n rawValue = rawValue.t;\n }\n return Chart.Scale.prototype.getRightValue.call(this, rawValue);\n },\n\n determineDataLimits: function() {\n var me = this;\n var chart = me.chart;\n var timeOpts = me.options.time;\n var min = MAX_INTEGER;\n var max = MIN_INTEGER;\n var timestamps = [];\n var datasets = [];\n var labels = [];\n var i, j, ilen, jlen, data, timestamp;\n\n // Convert labels to timestamps\n for (i = 0, ilen = chart.data.labels.length; i < ilen; ++i) {\n labels.push(parse(chart.data.labels[i], me));\n }\n\n // Convert data to timestamps\n for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) {\n if (chart.isDatasetVisible(i)) {\n data = chart.data.datasets[i].data;\n\n // Let's consider that all data have the same format.\n if (helpers.isObject(data[0])) {\n datasets[i] = [];\n\n for (j = 0, jlen = data.length; j < jlen; ++j) {\n timestamp = parse(data[j], me);\n timestamps.push(timestamp);\n datasets[i][j] = timestamp;\n }\n } else {\n timestamps.push.apply(timestamps, labels);\n datasets[i] = labels.slice(0);\n }\n } else {\n datasets[i] = [];\n }\n }\n\n if (labels.length) {\n // Sort labels **after** data have been converted\n labels = arrayUnique(labels).sort(sorter);\n min = Math.min(min, labels[0]);\n max = Math.max(max, labels[labels.length - 1]);\n }\n\n if (timestamps.length) {\n timestamps = arrayUnique(timestamps).sort(sorter);\n min = Math.min(min, timestamps[0]);\n max = Math.max(max, timestamps[timestamps.length - 1]);\n }\n\n min = parse(timeOpts.min, me) || min;\n max = parse(timeOpts.max, me) || max;\n\n // In case there is no valid min/max, let's use today limits\n min = min === MAX_INTEGER ? +moment().startOf('day') : min;\n max = max === MIN_INTEGER ? +moment().endOf('day') + 1 : max;\n\n // Make sure that max is strictly higher than min (required by the lookup table)\n me.min = Math.min(min, max);\n me.max = Math.max(min + 1, max);\n\n // PRIVATE\n me._horizontal = me.isHorizontal();\n me._table = [];\n me._timestamps = {\n data: timestamps,\n datasets: datasets,\n labels: labels\n };\n },\n\n buildTicks: function() {\n var me = this;\n var min = me.min;\n var max = me.max;\n var options = me.options;\n var timeOpts = options.time;\n var timestamps = [];\n var ticks = [];\n var i, ilen, timestamp;\n\n switch (options.ticks.source) {\n case 'data':\n timestamps = me._timestamps.data;\n break;\n case 'labels':\n timestamps = me._timestamps.labels;\n break;\n case 'auto':\n default:\n timestamps = generate(min, max, me.getLabelCapacity(min), options);\n }\n\n if (options.bounds === 'ticks' && timestamps.length) {\n min = timestamps[0];\n max = timestamps[timestamps.length - 1];\n }\n\n // Enforce limits with user min/max options\n min = parse(timeOpts.min, me) || min;\n max = parse(timeOpts.max, me) || max;\n\n // Remove ticks outside the min/max range\n for (i = 0, ilen = timestamps.length; i < ilen; ++i) {\n timestamp = timestamps[i];\n if (timestamp >= min && timestamp <= max) {\n ticks.push(timestamp);\n }\n }\n\n me.min = min;\n me.max = max;\n\n // PRIVATE\n me._unit = timeOpts.unit || determineUnitForFormatting(ticks, timeOpts.minUnit, me.min, me.max);\n me._majorUnit = determineMajorUnit(me._unit);\n me._table = buildLookupTable(me._timestamps.data, min, max, options.distribution);\n me._offsets = computeOffsets(me._table, ticks, min, max, options);\n\n return ticksFromTimestamps(ticks, me._majorUnit);\n },\n\n getLabelForIndex: function(index, datasetIndex) {\n var me = this;\n var data = me.chart.data;\n var timeOpts = me.options.time;\n var label = data.labels && index < data.labels.length ? data.labels[index] : '';\n var value = data.datasets[datasetIndex].data[index];\n\n if (helpers.isObject(value)) {\n label = me.getRightValue(value);\n }\n if (timeOpts.tooltipFormat) {\n label = momentify(label, timeOpts).format(timeOpts.tooltipFormat);\n }\n\n return label;\n },\n\n /**\n * Function to format an individual tick mark\n * @private\n */\n tickFormatFunction: function(tick, index, ticks, formatOverride) {\n var me = this;\n var options = me.options;\n var time = tick.valueOf();\n var formats = options.time.displayFormats;\n var minorFormat = formats[me._unit];\n var majorUnit = me._majorUnit;\n var majorFormat = formats[majorUnit];\n var majorTime = tick.clone().startOf(majorUnit).valueOf();\n var majorTickOpts = options.ticks.major;\n var major = majorTickOpts.enabled && majorUnit && majorFormat && time === majorTime;\n var label = tick.format(formatOverride ? formatOverride : major ? majorFormat : minorFormat);\n var tickOpts = major ? majorTickOpts : options.ticks.minor;\n var formatter = helpers.valueOrDefault(tickOpts.callback, tickOpts.userCallback);\n\n return formatter ? formatter(label, index, ticks) : label;\n },\n\n convertTicksToLabels: function(ticks) {\n var labels = [];\n var i, ilen;\n\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n labels.push(this.tickFormatFunction(moment(ticks[i].value), i, ticks));\n }\n\n return labels;\n },\n\n /**\n * @private\n */\n getPixelForOffset: function(time) {\n var me = this;\n var size = me._horizontal ? me.width : me.height;\n var start = me._horizontal ? me.left : me.top;\n var pos = interpolate(me._table, 'time', time, 'pos');\n\n return start + size * (me._offsets.left + pos) / (me._offsets.left + 1 + me._offsets.right);\n },\n\n getPixelForValue: function(value, index, datasetIndex) {\n var me = this;\n var time = null;\n\n if (index !== undefined && datasetIndex !== undefined) {\n time = me._timestamps.datasets[datasetIndex][index];\n }\n\n if (time === null) {\n time = parse(value, me);\n }\n\n if (time !== null) {\n return me.getPixelForOffset(time);\n }\n },\n\n getPixelForTick: function(index) {\n var ticks = this.getTicks();\n return index >= 0 && index < ticks.length ?\n this.getPixelForOffset(ticks[index].value) :\n null;\n },\n\n getValueForPixel: function(pixel) {\n var me = this;\n var size = me._horizontal ? me.width : me.height;\n var start = me._horizontal ? me.left : me.top;\n var pos = (size ? (pixel - start) / size : 0) * (me._offsets.left + 1 + me._offsets.left) - me._offsets.right;\n var time = interpolate(me._table, 'pos', pos, 'time');\n\n return moment(time);\n },\n\n /**\n * Crude approximation of what the label width might be\n * @private\n */\n getLabelWidth: function(label) {\n var me = this;\n var ticksOpts = me.options.ticks;\n var tickLabelWidth = me.ctx.measureText(label).width;\n var angle = helpers.toRadians(ticksOpts.maxRotation);\n var cosRotation = Math.cos(angle);\n var sinRotation = Math.sin(angle);\n var tickFontSize = helpers.valueOrDefault(ticksOpts.fontSize, defaults.global.defaultFontSize);\n\n return (tickLabelWidth * cosRotation) + (tickFontSize * sinRotation);\n },\n\n /**\n * @private\n */\n getLabelCapacity: function(exampleTime) {\n var me = this;\n\n var formatOverride = me.options.time.displayFormats.millisecond; // Pick the longest format for guestimation\n\n var exampleLabel = me.tickFormatFunction(moment(exampleTime), 0, [], formatOverride);\n var tickLabelWidth = me.getLabelWidth(exampleLabel);\n var innerWidth = me.isHorizontal() ? me.width : me.height;\n\n return Math.floor(innerWidth / tickLabelWidth);\n }\n });\n\n Chart.scaleService.registerScaleType('time', TimeScale, defaultConfig);\n};\n\n},{\"25\":25,\"45\":45,\"6\":6}]},{},[7])(7)\n});"; diff --git a/lib/Makefile b/lib/Makefile index af5c24027..3c58b5489 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -26,9 +26,12 @@ SQLITE3_DIR=$(DEPS_PATH)/sqlite3/sqlite3 CLICKHOUSE_CPP_DIR=$(DEPS_PATH)/clickhouse-cpp/clickhouse-cpp +MICROHTTPD_DIR=$(DEPS_PATH)/libmicrohttpd/libmicrohttpd +MICROHTTPD_IDIR=-I$(MICROHTTPD_DIR) -I$(MICROHTTPD_DIR)/src/include + IDIR=../include -IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(RE2_IDIR) -I$(SQLITE3_DIR) -I$(PCRE_PATH) -I/usr/local/include -I$(CLICKHOUSE_CPP_DIR) +IDIRS=-I$(IDIR) -I$(JEMALLOC_IDIR) -I$(MARIADB_IDIR) $(LIBCONFIG_IDIR) -I$(RE2_IDIR) -I$(SQLITE3_DIR) -I$(PCRE_PATH) -I/usr/local/include -I$(CLICKHOUSE_CPP_DIR) $(MICROHTTPD_IDIR) LDIRS=-L$(JEMALLOC_PATH)/lib -L$(RE2_PATH)/obj -L$(INJECTION_PATH) @@ -70,7 +73,7 @@ default: libproxysql.a _OBJ = c_tokenizer.o OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ)) -_OBJ_CXX = ProxySQL_GloVars.oo network.oo debug.oo configfile.oo Query_Cache.oo SpookyV2.oo MySQL_Authentication.oo gen_utils.oo sqlite3db.oo mysql_connection.oo MySQL_HostGroups_Manager.oo mysql_data_stream.oo MySQL_Thread.oo MySQL_Session.oo MySQL_Protocol.oo mysql_backend.oo Query_Processor.oo ProxySQL_Admin.oo MySQL_Monitor.oo MySQL_Logger.oo thread.oo MySQL_PreparedStatement.oo ProxySQL_Cluster.oo SQLite3_Server.oo ClickHouse_Authentication.oo ClickHouse_Server.oo +_OBJ_CXX = ProxySQL_GloVars.oo network.oo debug.oo configfile.oo Query_Cache.oo SpookyV2.oo MySQL_Authentication.oo gen_utils.oo sqlite3db.oo mysql_connection.oo MySQL_HostGroups_Manager.oo mysql_data_stream.oo MySQL_Thread.oo MySQL_Session.oo MySQL_Protocol.oo mysql_backend.oo Query_Processor.oo ProxySQL_Admin.oo MySQL_Monitor.oo MySQL_Logger.oo thread.oo MySQL_PreparedStatement.oo ProxySQL_Cluster.oo SQLite3_Server.oo ClickHouse_Authentication.oo ClickHouse_Server.oo ProxySQL_Statistics.oo Chart_bundle_js.oo ProxySQL_HTTP_Server.oo OBJ_CXX = $(patsubst %,$(ODIR)/%,$(_OBJ_CXX)) %.ko: %.cpp diff --git a/lib/MySQL_Thread.cpp b/lib/MySQL_Thread.cpp index 352fcefa4..82c2cc9ce 100644 --- a/lib/MySQL_Thread.cpp +++ b/lib/MySQL_Thread.cpp @@ -3316,13 +3316,15 @@ void MySQL_Thread::listener_handle_new_connection(MySQL_Data_Stream *myds, unsig } } -SQLite3_result * MySQL_Threads_Handler::SQL3_GlobalStatus() { +SQLite3_result * MySQL_Threads_Handler::SQL3_GlobalStatus(bool _memory) { const int colnum=2; char buf[256]; char **pta=(char **)malloc(sizeof(char *)*colnum); - Get_Memory_Stats(); + if (_memory == true) { + Get_Memory_Stats(); + } proxy_debug(PROXY_DEBUG_MYSQL_CONNECTION, 4, "Dumping MySQL Global Status\n"); - SQLite3_result *result=new SQLite3_result(colnum); + SQLite3_result *result=new SQLite3_result(colnum); result->add_column_definition(SQLITE_TEXT,"Variable_Name"); result->add_column_definition(SQLITE_TEXT,"Variable_Value"); // NOTE: as there is no string copy, we do NOT free pta[0] and pta[1] diff --git a/lib/ProxySQL_Admin.cpp b/lib/ProxySQL_Admin.cpp index 982961d6a..1cdcfb2b2 100644 --- a/lib/ProxySQL_Admin.cpp +++ b/lib/ProxySQL_Admin.cpp @@ -23,6 +23,10 @@ #include #include +#include "platform.h" +#include "microhttpd.h" + + //#define MYSQL_THREAD_IMPLEMENTATION #define SELECT_VERSION_COMMENT "select @@version_comment limit 1" @@ -36,6 +40,10 @@ #define READ_ONLY_ON "\x01\x00\x00\x01\x02\x23\x00\x00\x02\x03\x64\x65\x66\x00\x00\x00\x0d\x56\x61\x72\x69\x61\x62\x6c\x65\x5f\x6e\x61\x6d\x65\x00\x0c\x21\x00\x0f\x00\x00\x00\xfd\x01\x00\x1f\x00\x00\x1b\x00\x00\x03\x03\x64\x65\x66\x00\x00\x00\x05\x56\x61\x6c\x75\x65\x00\x0c\x21\x00\x0f\x00\x00\x00\xfd\x01\x00\x1f\x00\x00\x05\x00\x00\x04\xfe\x00\x00\x02\x00\x0d\x00\x00\x05\x09\x72\x65\x61\x64\x5f\x6f\x6e\x6c\x79\x02\x4f\x4e\x05\x00\x00\x06\xfe\x00\x00\x02\x00" +struct MHD_Daemon *Admin_HTTP_Server; + +extern ProxySQL_Statistics *GloProxyStats; + #ifdef __APPLE__ #ifndef MSG_NOSIGNAL #define MSG_NOSIGNAL 0 @@ -149,7 +157,6 @@ extern ClickHouse_Server *GloClickHouseServer; extern SQLite3_Server *GloSQLite3Server; - #define PANIC(msg) { perror(msg); exit(EXIT_FAILURE); } int rc, arg_on=1, arg_off=0; @@ -158,6 +165,11 @@ pthread_mutex_t sock_mutex = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_t admin_mutex = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_t users_mutex = PTHREAD_MUTEX_INITIALIZER; + +static int http_handler(void *cls, struct MHD_Connection *connection, const char *url, const char *method, const char *version, const char *upload_data, size_t *upload_data_size, void **ptr) { + return GloAdmin->AdminHTTPServer->handler(cls, connection, url, method, version, upload_data, upload_data_size, ptr); +} + #define LINESIZE 2048 #define ADMIN_SQLITE_TABLE_MYSQL_SERVERS "CREATE TABLE mysql_servers (hostgroup_id INT NOT NULL DEFAULT 0 , hostname VARCHAR NOT NULL , port INT NOT NULL DEFAULT 3306 , status VARCHAR CHECK (UPPER(status) IN ('ONLINE','SHUNNED','OFFLINE_SOFT', 'OFFLINE_HARD')) NOT NULL DEFAULT 'ONLINE' , weight INT CHECK (weight >= 0) NOT NULL DEFAULT 1 , compression INT CHECK (compression >=0 AND compression <= 102400) NOT NULL DEFAULT 0 , max_connections INT CHECK (max_connections >=0) NOT NULL DEFAULT 1000 , max_replication_lag INT CHECK (max_replication_lag >= 0 AND max_replication_lag <= 126144000) NOT NULL DEFAULT 0 , use_ssl INT CHECK (use_ssl IN(0,1)) NOT NULL DEFAULT 0 , max_latency_ms INT UNSIGNED CHECK (max_latency_ms>=0) NOT NULL DEFAULT 0 , comment VARCHAR NOT NULL DEFAULT '' , PRIMARY KEY (hostgroup_id, hostname, port) )" @@ -287,12 +299,17 @@ pthread_mutex_t users_mutex = PTHREAD_MUTEX_INITIALIZER; static char * admin_variables_names[]= { - (char *)"admin_credentials", - (char *)"stats_credentials", - (char *)"mysql_ifaces", - (char *)"telnet_admin_ifaces", - (char *)"telnet_stats_ifaces", - (char *)"refresh_interval", + (char *)"admin_credentials", + (char *)"stats_credentials", + (char *)"stats_mysql_connections", + (char *)"stats_mysql_connection_pool", + (char *)"stats_mysql_query_cache", + (char *)"stats_system_cpu", + (char *)"stats_system_memory", + (char *)"mysql_ifaces", + (char *)"telnet_admin_ifaces", + (char *)"telnet_stats_ifaces", + (char *)"refresh_interval", (char *)"read_only", (char *)"hash_passwords", (char *)"version", @@ -311,6 +328,8 @@ static char * admin_variables_names[]= { (char *)"checksum_mysql_query_rules", (char *)"checksum_mysql_servers", (char *)"checksum_mysql_users", + (char *)"web_enabled", + (char *)"web_port", #ifdef DEBUG (char *)"debug", #endif /* DEBUG */ @@ -3053,6 +3072,23 @@ static void * admin_main_loop(void *arg) fds[i].revents=0; } __end_while_pool: + { + if (GloProxyStats->MySQL_Threads_Handler_timetoget(curtime)) { + if (GloMTH) { + SQLite3_result * resultset=GloMTH->SQL3_GlobalStatus(false); + if (resultset) { + GloProxyStats->MySQL_Threads_Handler_sets(resultset); + delete resultset; + } + } + } + if (GloProxyStats->system_cpu_timetoget(curtime)) { + GloProxyStats->system_cpu_sets(); + } + if (GloProxyStats->system_memory_timetoget(curtime)) { + GloProxyStats->system_memory_sets(); + } + } if (S_amll.get_version()!=version) { S_amll.wrlock(); version=S_amll.get_version(); @@ -3177,6 +3213,22 @@ ProxySQL_Admin::ProxySQL_Admin() { variables.cluster_mysql_servers_save_to_disk = true; variables.cluster_mysql_users_save_to_disk = true; variables.cluster_proxysql_servers_save_to_disk = true; + variables.stats_mysql_connection_pool = 60; + variables.stats_mysql_connections = 60; + variables.stats_mysql_query_cache = 60; + variables.stats_system_cpu = 60; + variables.stats_system_memory = 60; + GloProxyStats->variables.stats_mysql_connection_pool = 60; + GloProxyStats->variables.stats_mysql_connections = 60; + GloProxyStats->variables.stats_mysql_query_cache = 60; + GloProxyStats->variables.stats_system_cpu = 60; + GloProxyStats->variables.stats_system_memory = 60; + + variables.web_enabled = true; + variables.web_enabled_old = false; + variables.web_port = 6080; + variables.web_port_old = variables.web_port; + #ifdef DEBUG variables.debug=GloVars.global.gdbg; #endif /* DEBUG */ @@ -3232,6 +3284,11 @@ void ProxySQL_Admin::print_version() { bool ProxySQL_Admin::init() { cpu_timer cpt; + Admin_HTTP_Server = NULL; + AdminHTTPServer = new ProxySQL_HTTP_Server(); + AdminHTTPServer->init(); + AdminHTTPServer->print_version(); + child_func[0]=child_mysql; child_func[1]=child_telnet; child_func[2]=child_telnet_also; @@ -3273,6 +3330,17 @@ bool ProxySQL_Admin::init() { monitordb = new SQLite3DB(); monitordb->open((char *)"file:mem_monitordb?mode=memory&cache=shared", SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_FULLMUTEX); + statsdb_disk = new SQLite3DB(); + statsdb_disk->open((char *)GloVars.statsdb_disk, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_FULLMUTEX); +// char *dbname = (char *)malloc(strlen(GloVars.statsdb_disk)+50); +// sprintf(dbname,"%s?mode=memory&cache=shared",GloVars.statsdb_disk); +// statsdb_disk->open(dbname, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_NOMUTEX | SQLITE_OPEN_FULLMUTEX); +// free(dbname); + + statsdb_disk->execute("PRAGMA synchronous=0"); +// GloProxyStats->statsdb_disk = configdb; + GloProxyStats->init(); + tables_defs_admin=new std::vector; tables_defs_stats=new std::vector; tables_defs_config=new std::vector; @@ -3364,6 +3432,8 @@ bool ProxySQL_Admin::init() { __attach_db(admindb, statsdb, (char *)"stats"); __attach_db(admindb, monitordb, (char *)"monitor"); __attach_db(statsdb, monitordb, (char *)"monitor"); + __attach_db(admindb, statsdb_disk, (char *)"stats_history"); + __attach_db(statsdb, statsdb_disk, (char *)"stats_history"); dump_mysql_collations(); @@ -3475,6 +3545,14 @@ void ProxySQL_Admin::init_sqliteserver_variables() { void ProxySQL_Admin::admin_shutdown() { int i; // do { usleep(50); } while (main_shutdown==0); + if (Admin_HTTP_Server) { + if (variables.web_enabled) { + MHD_stop_daemon(Admin_HTTP_Server); + Admin_HTTP_Server = NULL; + } + } + delete AdminHTTPServer; + AdminHTTPServer = NULL; pthread_join(admin_thr, NULL); delete admindb; delete statsdb; @@ -3617,7 +3695,6 @@ void ProxySQL_Admin::flush_admin_variables___database_to_runtime(SQLite3DB *db, } sprintf(q,"INSERT OR REPLACE INTO global_variables VALUES(\"admin-%s\",\"%s\")",r->fields[0],val); db->execute(q); - free(val); } else { if (strcmp(r->fields[0],(char *)"debug")==0) { sprintf(q,"DELETE FROM disk.global_variables WHERE variable_name=\"admin-%s\"",r->fields[0]); @@ -3635,6 +3712,32 @@ void ProxySQL_Admin::flush_admin_variables___database_to_runtime(SQLite3DB *db, } //commit(); NOT IMPLEMENTED wrunlock(); + { + if (variables.web_enabled != variables.web_enabled_old) { + if (variables.web_enabled) { + Admin_HTTP_Server = MHD_start_daemon(MHD_USE_AUTO | MHD_USE_INTERNAL_POLLING_THREAD | MHD_USE_ERROR_LOG, + variables.web_port, + NULL, NULL, http_handler, NULL, + MHD_OPTION_CONNECTION_TIMEOUT, (unsigned int) 120, MHD_OPTION_STRICT_FOR_CLIENT, (int) 1, MHD_OPTION_END); + } else { + MHD_stop_daemon(Admin_HTTP_Server); + Admin_HTTP_Server = NULL; + } + variables.web_enabled_old = variables.web_enabled; + } else { + if (variables.web_port != variables.web_port_old) { + if (variables.web_enabled) { + MHD_stop_daemon(Admin_HTTP_Server); + Admin_HTTP_Server = NULL; + Admin_HTTP_Server = MHD_start_daemon(MHD_USE_AUTO | MHD_USE_INTERNAL_POLLING_THREAD | MHD_USE_ERROR_LOG, + variables.web_port, + NULL, NULL, http_handler, NULL, + MHD_OPTION_CONNECTION_TIMEOUT, (unsigned int) 120, MHD_OPTION_STRICT_FOR_CLIENT, (int) 1, MHD_OPTION_END); + } + variables.web_port_old = variables.web_port; + } + } + } } if (resultset) delete resultset; } @@ -4030,8 +4133,31 @@ char * ProxySQL_Admin::get_variable(char *name) { if (!strcasecmp(name,"version")) return s_strdup(variables.admin_version); if (!strcasecmp(name,"cluster_username")) return s_strdup(variables.cluster_username); if (!strcasecmp(name,"cluster_password")) return s_strdup(variables.cluster_password); + if (!strncasecmp(name,"stats_",strlen("stats_"))) { + if (!strcasecmp(name,"stats_credentials")) + return s_strdup(variables.stats_credentials); + if (!strcasecmp(name,"stats_mysql_connection_pool")) { + sprintf(intbuf,"%d",variables.stats_mysql_connection_pool); + return strdup(intbuf); + } + if (!strcasecmp(name,"stats_mysql_connections")) { + sprintf(intbuf,"%d",variables.stats_mysql_connections); + return strdup(intbuf); + } + if (!strcasecmp(name,"stats_mysql_query_cache")) { + sprintf(intbuf,"%d",variables.stats_mysql_query_cache); + return strdup(intbuf); + } + if (!strcasecmp(name,"stats_system_cpu")) { + sprintf(intbuf,"%d",variables.stats_system_cpu); + return strdup(intbuf); + } + if (!strcasecmp(name,"stats_system_memory")) { + sprintf(intbuf,"%d",variables.stats_system_memory); + return strdup(intbuf); + } + } if (!strcasecmp(name,"admin_credentials")) return s_strdup(variables.admin_credentials); - if (!strcasecmp(name,"stats_credentials")) return s_strdup(variables.stats_credentials); if (!strcasecmp(name,"mysql_ifaces")) return s_strdup(variables.mysql_ifaces); if (!strcasecmp(name,"telnet_admin_ifaces")) return s_strdup(variables.telnet_admin_ifaces); if (!strcasecmp(name,"telnet_stats_ifaces")) return s_strdup(variables.telnet_stats_ifaces); @@ -4090,6 +4216,13 @@ char * ProxySQL_Admin::get_variable(char *name) { if (!strcasecmp(name,"checksum_mysql_users")) { return strdup((checksum_variables.checksum_mysql_users ? "true" : "false")); } + if (!strcasecmp(name,"web_enabled")) { + return strdup((variables.web_enabled ? "true" : "false")); + } + if (!strcasecmp(name,"web_port")) { + sprintf(intbuf,"%d",variables.web_port); + return strdup(intbuf); + } #ifdef DEBUG if (!strcasecmp(name,"debug")) { return strdup((variables.debug ? "true" : "false")); @@ -4198,6 +4331,173 @@ bool ProxySQL_Admin::set_variable(char *name, char *value) { // this is the pub return false; } } + if (!strncasecmp(name,"stats_",strlen("stats_"))) { + if (!strcasecmp(name,"stats_mysql_connection_pool")) { + int intv=atoi(value); + if (intv >= 0 && intv <= 300) { + if (intv > 120) { + intv = 300; + } else { + if (intv > 60) { + intv = 120; + } else { + if (intv > 30) { + intv = 60; + } else { + if (intv > 10) { + intv = 30; + } else { + if (intv > 5) { + intv = 10; + } else { + if (intv > 1) { + intv = 5; + } + } + } + } + } + } + variables.stats_mysql_connection_pool=intv; + GloProxyStats->variables.stats_mysql_connection_pool=intv; + return true; + } else { + return false; + } + } + if (!strcasecmp(name,"stats_mysql_connections")) { + int intv=atoi(value); + if (intv >= 0 && intv <= 300) { + if (intv > 120) { + intv = 300; + } else { + if (intv > 60) { + intv = 120; + } else { + if (intv > 30) { + intv = 60; + } else { + if (intv > 10) { + intv = 30; + } else { + if (intv > 5) { + intv = 10; + } else { + if (intv > 1) { + intv = 5; + } + } + } + } + } + } + variables.stats_mysql_connections=intv; + GloProxyStats->variables.stats_mysql_connections=intv; + return true; + } else { + return false; + } + } + if (!strcasecmp(name,"stats_mysql_query_cache")) { + int intv=atoi(value); + if (intv >= 0 && intv <= 300) { + if (intv > 120) { + intv = 300; + } else { + if (intv > 60) { + intv = 120; + } else { + if (intv > 30) { + intv = 60; + } else { + if (intv > 10) { + intv = 30; + } else { + if (intv > 5) { + intv = 10; + } else { + if (intv > 1) { + intv = 5; + } + } + } + } + } + } + variables.stats_mysql_query_cache=intv; + GloProxyStats->variables.stats_mysql_query_cache=intv; + return true; + } else { + return false; + } + } + if (!strcasecmp(name,"stats_system_cpu")) { + int intv=atoi(value); + if (intv >= 0 && intv <= 600) { + if (intv > 120) { + intv = 300; + } else { + if (intv > 60) { + intv = 120; + } else { + if (intv > 30) { + intv = 60; + } else { + if (intv > 10) { + intv = 30; + } else { + if (intv > 5) { + intv = 10; + } else { + if (intv > 1) { + intv = 5; + } + } + } + } + } + } + variables.stats_system_cpu=intv; + GloProxyStats->variables.stats_system_cpu=intv; + return true; + } else { + return false; + } + } + if (!strcasecmp(name,"stats_system_memory")) { + int intv=atoi(value); + if (intv >= 0 && intv <= 600) { + if (intv > 120) { + intv = 300; + } else { + if (intv > 60) { + intv = 120; + } else { + if (intv > 30) { + intv = 60; + } else { + if (intv > 10) { + intv = 30; + } else { + if (intv > 5) { + intv = 10; + } else { + if (intv > 1) { + intv = 5; + } + } + } + } + } + } + variables.stats_system_memory=intv; + GloProxyStats->variables.stats_system_memory=intv; + return true; + } else { + return false; + } + } + } if (!strcasecmp(name,"mysql_ifaces")) { if (vallen) { bool update_creds=false; @@ -4351,6 +4651,26 @@ bool ProxySQL_Admin::set_variable(char *name, char *value) { // this is the pub } return false; } + if (!strcasecmp(name,"web_enabled")) { + if (strcasecmp(value,"true")==0 || strcasecmp(value,"1")==0) { + variables.web_enabled=true; + return true; + } + if (strcasecmp(value,"false")==0 || strcasecmp(value,"0")==0) { + variables.web_enabled=false; + return true; + } + return false; + } + if (!strcasecmp(name,"web_port")) { + int intv=atoi(value); + if (intv > 0 && intv < 65535) { + variables.web_port=intv; + return true; + } else { + return false; + } + } if (!strcasecmp(name,"cluster_mysql_query_rules_save_to_disk")) { if (strcasecmp(value,"true")==0 || strcasecmp(value,"1")==0) { variables.cluster_mysql_query_rules_save_to_disk=true; @@ -4593,7 +4913,7 @@ void ProxySQL_Admin::stats___memory_metrics() { void ProxySQL_Admin::stats___mysql_global() { if (!GloMTH) return; - SQLite3_result * resultset=GloMTH->SQL3_GlobalStatus(); + SQLite3_result * resultset=GloMTH->SQL3_GlobalStatus(true); if (resultset==NULL) return; statsdb->execute("BEGIN"); statsdb->execute("DELETE FROM stats_mysql_global"); diff --git a/lib/ProxySQL_HTTP_Server.cpp b/lib/ProxySQL_HTTP_Server.cpp new file mode 100644 index 000000000..747dc4e39 --- /dev/null +++ b/lib/ProxySQL_HTTP_Server.cpp @@ -0,0 +1,435 @@ +#include // std::cout +#include // std::sort +#include // std::vector +#include "re2/re2.h" +#include "re2/regexp.h" +#include "proxysql.h" +#include "cpp.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "SpookyV2.h" + +#include +#include + +#include "platform.h" +#include "microhttpd.h" + + +#ifdef DEBUG +#define DEB "_DEBUG" +#else +#define DEB "" +#endif /* DEBUG */ +#define PROXYSQL_HTTP_SERVER_VERSION "1.4.1031" DEB + + +//extern struct MHD_Daemon *Admin_HTTP_Server; + +extern ProxySQL_Statistics *GloProxyStats; + +extern char * Chart_bundle_js_c; +#define RATE_LIMIT_PAGE "Rate Limit PageRate Limit Reached" + + + +char * ProxySQL_HTTP_Server::extract_values(SQLite3_result *result, int idx, bool relative, double mult) { + string s = "["; + int i; + for ( i= (relative ? 1 : 0) ; i < result->rows_count ; i++) { + SQLite3_row *r1 = ( relative ? result->rows[i-1] : NULL ); + SQLite3_row *r2 = result->rows[i]; + double v; + if (relative) { + double d2 = atol(r2->fields[idx]); + double d1 = atol(r1->fields[idx]); + double diff = (atol(r2->fields[1])-atol(r1->fields[1])); + v = (d2-d1)/diff; + } else { + v = atol(r2->fields[idx]); + } + v *= mult; + if (v<0) v=0; + s.append(std::to_string(v)); + if (i != result->rows_count-1) { + s.append(", "); + } + } + s.append("];"); + char *ret=strdup(s.c_str()); + return ret; +} + +char * ProxySQL_HTTP_Server::extract_ts(SQLite3_result *result, bool relative) { + string s = "["; + int i; + for ( i= (relative ? 1 : 0) ; i < result->rows_count ; i++) { + SQLite3_row *r2 = result->rows[i]; + s.append("\""); + s.append(r2->fields[0]); + s.append("\""); + if (i != result->rows_count-1) { + s.append(", "); + } + } + s.append("];"); + char *ret=strdup(s.c_str()); + return ret; +} + + +void ProxySQL_HTTP_Server::init() { +} + +void ProxySQL_HTTP_Server::print_version() { + fprintf(stderr,"Standard ProxySQL HTTP Server Handler rev. %s -- %s -- %s\n", PROXYSQL_HTTP_SERVER_VERSION, __FILE__, __TIMESTAMP__); +} + +#define EMPTY_PAGE "File not foundFile not found
Go back home" + +int ProxySQL_HTTP_Server::handler(void *cls, struct MHD_Connection *connection, const char *url, const char *method, const char *version, const char *upload_data, size_t *upload_data_size, void **ptr) { + + struct MHD_Response *response; + int ret; + char *valmetric = NULL; + char *valinterval = NULL; + char *valunit = NULL; + + time_t now = time(NULL); + if (now != cur_time) { + page_sec = 0; + cur_time = now; + } + page_sec++; + if (page_sec > ProxySQL_HTTP_Server_Rate_Limit) { + response = MHD_create_response_from_buffer(strlen(RATE_LIMIT_PAGE), (void *) RATE_LIMIT_PAGE, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_OK, response); + MHD_destroy_response (response); + return ret; + } + + if (0 != strcmp (method, "GET")) + return MHD_NO; /* unexpected method */ +// if (&aptr != *ptr) { +// /* do never respond on first call */ +// *ptr = &aptr; +// return MHD_YES; +// } +// *ptr = NULL; /* reset when done */ + + if (strcmp(url,"/stats")==0) { + valmetric = (char *)MHD_lookup_connection_value (connection, MHD_GET_ARGUMENT_KIND, (char *)"metric"); + valinterval = (char *)MHD_lookup_connection_value (connection, MHD_GET_ARGUMENT_KIND, (char *)"points"); + valunit = (char *)MHD_lookup_connection_value (connection, MHD_GET_ARGUMENT_KIND, (char *)"unit"); + if (valmetric == NULL) { + response = MHD_create_response_from_buffer (strlen (EMPTY_PAGE), (void *) EMPTY_PAGE, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_NOT_FOUND, response); + MHD_destroy_response (response); + return ret; + } + if (valunit == NULL) { + valunit = (char *)"second"; + } + if ( (strcmp(valunit,"second")) && (strcmp(valunit,"hour")) && (strcmp(valunit,"day")) ) { + response = MHD_create_response_from_buffer (strlen (EMPTY_PAGE), (void *) EMPTY_PAGE, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_NOT_FOUND, response); + MHD_destroy_response (response); + return ret; + } + if (valinterval == NULL) { + if ((strcmp(valunit,(char *)"second") == 0)) { + valinterval = (char *)"14400"; + } + if ((strcmp(valunit,(char *)"hour") == 0)) { + valinterval = (char *)"720"; + } + if ((strcmp(valunit,"day") == 0)) { + valinterval = (char *)"365"; + } + } + + if (strcmp(valmetric,"system")==0) { + string *s = generate_header((char *)"ProxySQL Graphs"); + string *s1 = generate_canvas((char *)"myChart1"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart2"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart3"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart4"); + s->append(s1->c_str()); + SQLite3_result *cpu_sqlite = GloProxyStats->get_system_cpu_metrics(); + SQLite3_result *memory_sqlite = GloProxyStats->get_system_memory_metrics(); + //SQLite3_result *mysql_metrics_sqlite = GloProxyStats->get_mysql_metrics(); + char **nm = NULL; + char **nl = NULL; + char **nv = NULL; + char *ts = NULL; + + nm = (char **)malloc(sizeof(char *)*2); + nm[0] = (char *)"utime"; + nm[1] = (char *)"stime"; + nl = (char **)malloc(sizeof(char *)*2); + nl[0] = (char *)"User Time"; + nl[1] = (char *)"System Time"; + nv = (char **)malloc(sizeof(char *)*2); + nv[0] = extract_values(cpu_sqlite,2,true,(double)1/sysconf(_SC_CLK_TCK)); + nv[1] = extract_values(cpu_sqlite,3,true,(double)1/sysconf(_SC_CLK_TCK)); + ts = extract_ts(cpu_sqlite,true); + s1 = generate_chart((char *)"myChart1",ts,2,nm,nl,nv); + s->append(s1->c_str()); + free(nm); + free(nl); + free(nv[0]); + free(nv[1]); + free(nv); + free(ts); + + + nm = (char **)malloc(sizeof(char *)*5); + nm[0] = (char *)"allocated"; + nm[1] = (char *)"resident"; + nm[2] = (char *)"active"; + nm[3] = (char *)"mapped"; + nm[4] = (char *)"metadata"; + nl = (char **)malloc(sizeof(char *)*5); + nl[0] = (char *)"Allocated"; + nl[1] = (char *)"Resident"; + nl[2] = (char *)"Active"; + nl[3] = (char *)"Mapped"; + nl[4] = (char *)"Metadata"; + nv = (char **)malloc(sizeof(char *)*5); + nv[0] = extract_values(memory_sqlite,2,false); + nv[1] = extract_values(memory_sqlite,3,false); + nv[2] = extract_values(memory_sqlite,4,false); + nv[3] = extract_values(memory_sqlite,5,false); + nv[4] = extract_values(memory_sqlite,6,false); + ts = extract_ts(cpu_sqlite,true); + s1 = generate_chart((char *)"myChart2",ts,5,nm,nl,nv); + s->append(s1->c_str()); + free(nm); + free(nl); + free(nv[0]); + free(nv[1]); + free(nv[2]); + free(nv[3]); + free(nv[4]); + free(nv); + free(ts); + + s->append(""); + response = MHD_create_response_from_buffer(s->length(), (void *) s->c_str(), MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_OK, response); + MHD_destroy_response (response); + return ret; + } + + if (strcmp(valmetric,"mysql")==0) { + string *s = generate_header((char *)"ProxySQL Graphs"); + string *s1 = generate_canvas((char *)"myChart1"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart2"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart3"); + s->append(s1->c_str()); + s1 = generate_canvas((char *)"myChart4"); + s->append(s1->c_str()); + //SQLite3_result *cpu_sqlite = GloProxyStats->get_system_cpu_metrics(); + //SQLite3_result *memory_sqlite = GloProxyStats->get_system_memory_metrics(); + SQLite3_result *mysql_metrics_sqlite = GloProxyStats->get_mysql_metrics(); + char **nm = NULL; + char **nl = NULL; + char **nv = NULL; + char *ts = NULL; + +//Client_Connections_aborted, Client_Connections_connected, Client_Connections_created, Server_Connections_aborted, Server_Connections_connected, Server_Connections_created, ConnPool_get_conn_immediate, ConnPool_get_conn_success, Questions + + nm = (char **)malloc(sizeof(char *)*6); + nm[0] = (char *)"Client_Connections_aborted"; + nm[1] = (char *)"Client_Connections_connected"; + nm[2] = (char *)"Client_Connections_created"; + nm[3] = (char *)"Server_Connections_aborted"; + nm[4] = (char *)"Server_Connections_connected"; + nm[5] = (char *)"Server_Connections_created"; + nl = (char **)malloc(sizeof(char *)*6); + nl[0] = (char *)"Client Connections aborted"; + nl[1] = (char *)"Client Connections connected"; + nl[2] = (char *)"Client Connections created"; + nl[3] = (char *)"Server Connections aborted"; + nl[4] = (char *)"Server Connections connected"; + nl[5] = (char *)"Server Connections created"; + nv = (char **)malloc(sizeof(char *)*6); + nv[0] = extract_values(mysql_metrics_sqlite,2,true,(double)1); + nv[1] = extract_values(mysql_metrics_sqlite,3,false,(double)1); + nv[2] = extract_values(mysql_metrics_sqlite,4,true,(double)1); + nv[3] = extract_values(mysql_metrics_sqlite,5,true,(double)1); + nv[4] = extract_values(mysql_metrics_sqlite,6,false,(double)1); + nv[5] = extract_values(mysql_metrics_sqlite,7,true,(double)1); + ts = extract_ts(mysql_metrics_sqlite,true); + s1 = generate_chart((char *)"myChart1",ts,6,nm,nl,nv); + s->append(s1->c_str()); + free(nm); + free(nl); + for (int aa=0 ; aa<6 ; aa++) { + free(nv[aa]); + } + free(nv); + free(ts); + + + nm = (char **)malloc(sizeof(char *)*4); + nm[0] = (char *)"ConnPool_get_conn_failure"; + nm[1] = (char *)"ConnPool_get_conn_immediate"; + nm[2] = (char *)"ConnPool_get_conn_success"; + nm[3] = (char *)"Questions"; + nl = (char **)malloc(sizeof(char *)*4); + nl[0] = (char *)"ConnPool failure"; + nl[1] = (char *)"ConnPool immediate"; + nl[2] = (char *)"ConnPool success"; + nl[3] = (char *)"Questions"; + nv = (char **)malloc(sizeof(char *)*4); + nv[0] = extract_values(mysql_metrics_sqlite,8,true); + nv[1] = extract_values(mysql_metrics_sqlite,9,true); + nv[2] = extract_values(mysql_metrics_sqlite,10,true); + nv[3] = extract_values(mysql_metrics_sqlite,11,true); + ts = extract_ts(mysql_metrics_sqlite,true); + s1 = generate_chart((char *)"myChart2",ts,4,nm,nl,nv); + s->append(s1->c_str()); + free(nm); + free(nl); + for (int aa=0 ; aa<4 ; aa++) { + free(nv[aa]); + } + free(nv); + free(ts); + + s->append(""); + response = MHD_create_response_from_buffer(s->length(), (void *) s->c_str(), MHD_RESPMEM_MUST_COPY); + ret = MHD_queue_response (connection, MHD_HTTP_OK, response); + MHD_destroy_response (response); + delete s; + return ret; + } + } + + if (strcmp(url,"/Chart.bundle.js")==0) { + response = MHD_create_response_from_buffer(strlen(Chart_bundle_js_c), Chart_bundle_js_c, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_OK, response); + MHD_destroy_response (response); + return ret; + } + response = MHD_create_response_from_buffer (strlen (EMPTY_PAGE), (void *) EMPTY_PAGE, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_NOT_FOUND, response); + MHD_destroy_response (response); + + return ret; +} + +string * ProxySQL_HTTP_Server::generate_header(char *s) { + string *a = new string(); + a->append("\n"); + a->append(s); + a->append("\n\n\n\n"); + return a; +} + +string * ProxySQL_HTTP_Server::generate_canvas(char *s) { + string *a = new string(); + a->append("
append(s); + a->append("\" width=\"650\" height=\"280\">
\n"); + return a; +} +ProxySQL_HTTP_Server::ProxySQL_HTTP_Server() { + page_sec = 0; + cur_time = time(NULL); +} + +ProxySQL_HTTP_Server::~ProxySQL_HTTP_Server() { +} + +string * ProxySQL_HTTP_Server::generate_chart(char *chart_name, char *ts, int nsets, char **dname, char **llabel, char **values) { + char *h=(char *)"0123456789abcdef"; + string *ret= new string(); + int i; + ret->append("\n"); + return ret; + +} +/* +

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 z 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