From f6fd878e43b7001d98d69deb58a3228c9154f244 Mon Sep 17 00:00:00 2001 From: RisvanaCybro Date: Sat, 20 Jul 2024 17:05:55 +0530 Subject: [PATCH] July 20: [ADD] Initial commit 'odoo_website_helpdesk_dashboard' --- odoo_website_helpdesk_dashboard/README.rst | 60 + odoo_website_helpdesk_dashboard/__init__.py | 23 + .../__manifest__.py | 51 + .../controllers/__init__.py | 22 + .../odoo_website_helpdesk_dashboard.py | 41 + .../doc/RELEASE_NOTES.md | 7 + .../models/__init__.py | 22 + .../models/helpdesk_dashboard.py | 194 + .../static/description/assets/icons/check.png | Bin 0 -> 3676 bytes .../description/assets/icons/chevron.png | Bin 0 -> 310 bytes .../static/description/assets/icons/cogs.png | Bin 0 -> 1377 bytes .../description/assets/icons/consultation.png | Bin 0 -> 1458 bytes .../description/assets/icons/ecom-black.png | Bin 0 -> 576 bytes .../assets/icons/education-black.png | Bin 0 -> 733 bytes .../description/assets/icons/hotel-black.png | Bin 0 -> 911 bytes .../description/assets/icons/license.png | Bin 0 -> 1095 bytes .../description/assets/icons/lifebuoy.png | Bin 0 -> 1199 bytes .../assets/icons/manufacturing-black.png | Bin 0 -> 673 bytes .../description/assets/icons/pos-black.png | Bin 0 -> 878 bytes .../description/assets/icons/puzzle.png | Bin 0 -> 653 bytes .../assets/icons/restaurant-black.png | Bin 0 -> 905 bytes .../assets/icons/service-black.png | Bin 0 -> 839 bytes .../assets/icons/trading-black.png | Bin 0 -> 427 bytes .../description/assets/icons/training.png | Bin 0 -> 627 bytes .../description/assets/icons/update.png | Bin 0 -> 1225 bytes .../static/description/assets/icons/user.png | Bin 0 -> 988 bytes .../description/assets/icons/wrench.png | Bin 0 -> 1205 bytes .../description/assets/misc/categories.png | Bin 0 -> 1532 bytes .../description/assets/misc/check-box.png | Bin 0 -> 1118 bytes .../description/assets/misc/compass.png | Bin 0 -> 1931 bytes .../description/assets/misc/corporate.png | Bin 0 -> 1177 bytes .../assets/misc/customer-support.png | Bin 0 -> 2136 bytes .../description/assets/misc/cybrosys-logo.png | Bin 0 -> 4496 bytes .../description/assets/misc/features.png | Bin 0 -> 589 bytes .../static/description/assets/misc/logo.png | Bin 0 -> 3452 bytes .../description/assets/misc/pictures.png | Bin 0 -> 1692 bytes .../description/assets/misc/pie-chart.png | Bin 0 -> 2338 bytes .../description/assets/misc/right-arrow.png | Bin 0 -> 967 bytes .../static/description/assets/misc/star.png | Bin 0 -> 1642 bytes .../description/assets/misc/support.png | Bin 0 -> 3892 bytes .../description/assets/misc/whatsapp.png | Bin 0 -> 5097 bytes .../static/description/assets/modules/1.jpg | Bin 0 -> 95200 bytes .../static/description/assets/modules/2.jpg | Bin 0 -> 89024 bytes .../static/description/assets/modules/3.jpg | Bin 0 -> 87411 bytes .../static/description/assets/modules/4.jpg | Bin 0 -> 104280 bytes .../static/description/assets/modules/5.jpg | Bin 0 -> 92718 bytes .../static/description/assets/modules/6.jpg | Bin 0 -> 88409 bytes .../description/assets/screenshots/1.png | Bin 0 -> 104521 bytes .../description/assets/screenshots/2.png | Bin 0 -> 38561 bytes .../description/assets/screenshots/3.png | Bin 0 -> 108422 bytes .../description/assets/screenshots/4.png | Bin 0 -> 108513 bytes .../description/assets/screenshots/5.png | Bin 0 -> 108584 bytes .../description/assets/screenshots/6.png | Bin 0 -> 112491 bytes .../description/assets/screenshots/7.png | Bin 0 -> 109718 bytes .../description/assets/screenshots/8.png | Bin 0 -> 109085 bytes .../description/assets/screenshots/9.png | Bin 0 -> 108622 bytes .../description/assets/screenshots/hero.gif | Bin 0 -> 333093 bytes .../static/description/banner.jpg | Bin 0 -> 91169 bytes .../static/description/icon.png | Bin 0 -> 6209 bytes .../static/description/index.html | 797 + .../static/src/css/dashboard.css | 267 + .../static/src/js/dashboard_view.js | 290 + .../static/src/js/lib/Chart.bundle.js | 19288 ++++++++++++++++ .../static/src/js/lib/d3.min.js | 7828 +++++++ .../static/src/xml/dashboard_view.xml | 224 + .../views/dashboard_templates.xml | 47 + .../views/menu_item.xml | 13 + 67 files changed, 29174 insertions(+) create mode 100644 odoo_website_helpdesk_dashboard/README.rst create mode 100644 odoo_website_helpdesk_dashboard/__init__.py create mode 100644 odoo_website_helpdesk_dashboard/__manifest__.py create mode 100644 odoo_website_helpdesk_dashboard/controllers/__init__.py create mode 100644 odoo_website_helpdesk_dashboard/controllers/odoo_website_helpdesk_dashboard.py create mode 100644 odoo_website_helpdesk_dashboard/doc/RELEASE_NOTES.md create mode 100644 odoo_website_helpdesk_dashboard/models/__init__.py create mode 100644 odoo_website_helpdesk_dashboard/models/helpdesk_dashboard.py create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/check.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/chevron.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/cogs.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/consultation.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/ecom-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/education-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/hotel-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/license.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/lifebuoy.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/manufacturing-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/pos-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/puzzle.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/restaurant-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/service-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/trading-black.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/training.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/update.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/user.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/icons/wrench.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/categories.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/check-box.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/compass.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/corporate.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/customer-support.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/cybrosys-logo.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/features.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/logo.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/pictures.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/pie-chart.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/right-arrow.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/star.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/support.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/misc/whatsapp.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/1.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/2.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/3.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/4.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/5.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/modules/6.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/1.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/2.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/3.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/4.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/5.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/6.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/7.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/8.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/9.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/assets/screenshots/hero.gif create mode 100644 odoo_website_helpdesk_dashboard/static/description/banner.jpg create mode 100644 odoo_website_helpdesk_dashboard/static/description/icon.png create mode 100644 odoo_website_helpdesk_dashboard/static/description/index.html create mode 100644 odoo_website_helpdesk_dashboard/static/src/css/dashboard.css create mode 100644 odoo_website_helpdesk_dashboard/static/src/js/dashboard_view.js create mode 100644 odoo_website_helpdesk_dashboard/static/src/js/lib/Chart.bundle.js create mode 100644 odoo_website_helpdesk_dashboard/static/src/js/lib/d3.min.js create mode 100644 odoo_website_helpdesk_dashboard/static/src/xml/dashboard_view.xml create mode 100644 odoo_website_helpdesk_dashboard/views/dashboard_templates.xml create mode 100644 odoo_website_helpdesk_dashboard/views/menu_item.xml diff --git a/odoo_website_helpdesk_dashboard/README.rst b/odoo_website_helpdesk_dashboard/README.rst new file mode 100644 index 000000000..5298cee50 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/README.rst @@ -0,0 +1,60 @@ +.. image:: https://img.shields.io/badge/license-LGPL--3-blue.svg + :target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 + +Website HelpDesk Dashboard +========================== +Website HelpDesk Dashboard Module Brings a Multipurpose Graphical Dashboard +for Website HelpDesk module + +Depends +======= +[odoo_website_helpdesk] Custom addon by Cybrosys. + +Tech +==== +* [Python] - Models +* [XML] - Odoo views + +Installation +============ +- www.odoo.com/documentation/17.0/setup/install.html +- Install our custom addon + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +======= +General Public License, Version 3 (LGPL-3 v3). +(https://www.gnu.org/licenses/lgpl-3.0-standalone.html) + +Credits +======= +Developers: (V16) Robin K , + (V17) Fathima Mazlin AM, +Contact: odoo@cybrosys.com + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + + +Bug Tracker +=========== +Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. + +Maintainer +========== +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. + +For support and more information, please visit `Our Website `__ + +Further information +=================== +HTML Description: ``__ diff --git a/odoo_website_helpdesk_dashboard/__init__.py b/odoo_website_helpdesk_dashboard/__init__.py new file mode 100644 index 000000000..50349d36a --- /dev/null +++ b/odoo_website_helpdesk_dashboard/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +from . import controllers +from . import models diff --git a/odoo_website_helpdesk_dashboard/__manifest__.py b/odoo_website_helpdesk_dashboard/__manifest__.py new file mode 100644 index 000000000..e05625f00 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/__manifest__.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +{ + 'name': "Website HelpDesk Dashboard", + 'version': '17.0.1.0.0', + 'category': 'Website', + 'summary': """Helpdesk Support Ticket Management Dashboard""", + 'description': """Website HelpDesk Dashboard Module Brings a Multipurpose""" + """Graphical Dashboard for Website HelpDesk module""", + 'author': "Cybrosys Techno Solutions", + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.openhrms.com", + 'depends': ['odoo_website_helpdesk', 'base'], + 'data': [ + 'views/menu_item.xml', + 'views/dashboard_templates.xml', + ], + 'assets': { + 'web.assets_backend': [ + 'odoo_website_helpdesk_dashboard/static/src/css/dashboard.css', + 'odoo_website_helpdesk_dashboard/static/src/js/lib/Chart.bundle.js', + 'odoo_website_helpdesk_dashboard/static/src/xml/dashboard_view.xml', + 'odoo_website_helpdesk_dashboard/static/src/js/dashboard_view.js' + ], + }, + 'images': ['static/description/banner.png'], + 'license': 'LGPL-3', + 'auto_install': False, + 'installable': True, + 'application': False, +} diff --git a/odoo_website_helpdesk_dashboard/controllers/__init__.py b/odoo_website_helpdesk_dashboard/controllers/__init__.py new file mode 100644 index 000000000..aa2d75a77 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/controllers/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +from . import odoo_website_helpdesk_dashboard diff --git a/odoo_website_helpdesk_dashboard/controllers/odoo_website_helpdesk_dashboard.py b/odoo_website_helpdesk_dashboard/controllers/odoo_website_helpdesk_dashboard.py new file mode 100644 index 000000000..a4d290d04 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/controllers/odoo_website_helpdesk_dashboard.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +from odoo import http +from odoo.http import request + + +class HelpDeskTickets(http.Controller): + @http.route(['/help/tickets'], type="json", auth="user") + def elearning_snippet(self): + tickets = [] + help_tickets = request.env['ticket.helpdesk'].sudo().search( + [('stage_id.name', '=', 'Inbox')]) + for i in help_tickets: + tickets.append( + {'name': i.name, 'subject': i.subject, 'id': i.id}) + values = { + 'h_tickets': tickets + } + response = http.Response( + template='odoo_website_helpdesk_dashboard.dashboard_tickets', + qcontext=values) + return response.render() diff --git a/odoo_website_helpdesk_dashboard/doc/RELEASE_NOTES.md b/odoo_website_helpdesk_dashboard/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..2d79fcd41 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/doc/RELEASE_NOTES.md @@ -0,0 +1,7 @@ +## Module + +#### 20.04.2024 +#### Version 17.0.1.0.0 +#### ADD + +- Initial commit for Website HelpDesk Dashboard diff --git a/odoo_website_helpdesk_dashboard/models/__init__.py b/odoo_website_helpdesk_dashboard/models/__init__.py new file mode 100644 index 000000000..ae36227b1 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/models/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +from . import helpdesk_dashboard diff --git a/odoo_website_helpdesk_dashboard/models/helpdesk_dashboard.py b/odoo_website_helpdesk_dashboard/models/helpdesk_dashboard.py new file mode 100644 index 000000000..5ff1a6023 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/models/helpdesk_dashboard.py @@ -0,0 +1,194 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################# +import calendar +from odoo import api, models + + +class TicketHelpdesk(models.Model): + """ Inherited class to get help desk ticket details....""" + _inherit = 'ticket.helpdesk' + + @api.model + def check_user_group(self): + """Checking user group""" + user = self.env.user + if user.has_group('base.group_user'): + return True + return False + + @api.model + def get_tickets_count(self): + """ Function To Get The Ticket Count""" + ticket_details = self.env['ticket.helpdesk'].search([]) + ticket_data = [] + for ticket in ticket_details: + ticket_data.append({ + 'ticket_name': ticket.name, + 'customer_name': ticket.customer_id.name, + 'subject': ticket.subject, + 'priority': ticket.priority, + 'assigned_to': ticket.assigned_user_id.name, + 'assigned_image': ticket.assigned_user_id.image_1920, + }) + tickets_new_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', 'in', ['Inbox', 'Draft'])]) + tickets_in_progress_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', '=', 'In Progress')]) + tickets_closed_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', '=', 'Done')]) + very_low_count = self.env['ticket.helpdesk'].search_count([ + ('priority', '=', '0')]) + very_low_count1 = very_low_count * 10 + low_count = self.env['ticket.helpdesk'].search_count([ + ('priority', '=', '1')]) + low_count1 = low_count * 10 + normal_count = self.env['ticket.helpdesk'].search_count([ + ('priority', '=', '2')]) + normal_count1 = normal_count * 10 + high_count = self.env['ticket.helpdesk'].search_count([ + ('priority', '=', '3')]) + high_count1 = high_count * 10 + very_high_count = self.env['ticket.helpdesk'].search_count([ + ('priority', '=', '4')]) + very_high_count1 = very_high_count * 10 + response = self.env['ticket.helpdesk'].search_count([ + ('review', '!=', None)]) + teams_count = self.env['team.helpdesk'].search_count([]) + tickets = self.env['ticket.helpdesk'].search( + [('stage_id.name', 'in', ['Inbox', 'Draft'])]) + p_tickets = [] + for ticket in tickets: + p_tickets.append(ticket.name) + values = { + 'inbox_count': tickets_new_count, + 'progress_count': tickets_in_progress_count, + 'done_count': tickets_closed_count, + 'team_count': teams_count, + 'p_tickets': p_tickets, + 'very_low_count1': very_low_count1, + 'low_count1': low_count1, + 'normal_count1': normal_count1, + 'high_count1': high_count1, + 'very_high_count1': very_high_count1, + 'response': response, + 'ticket_details': ticket_data, + } + return values + + @api.model + def get_tickets_view(self): + """ Function To Get The Ticket View""" + tickets_new_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', 'in', ['Inbox', 'Draft'])]) + tickets_in_progress_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', '=', 'In Progress')]) + tickets_closed_count = self.env['ticket.helpdesk'].search_count( + [('stage_id.name', '=', 'Done')]) + teams_count = self.env['team.helpdesk'].search_count([]) + tickets_new = self.env['ticket.helpdesk'].search( + [('stage_id.name', 'in', ['Inbox', 'Draft'])]) + tickets_in_progress = self.env['ticket.helpdesk'].search( + [('stage_id.name', '=', 'In Progress')]) + tickets_closed = self.env['ticket.helpdesk'].search( + [('stage_id.name', '=', 'Done')]) + teams = self.env['team.helpdesk'].search([]) + new_list = [] + progress_list = [] + done_list = [] + teams_list = [] + for new in tickets_new: + new_list.append(str(new.name) + ' : ' + str(new.subject)) + for progress in tickets_in_progress: + progress_list.append( + str(progress.name) + ' : ' + str(progress.subject)) + for done in tickets_closed: + done_list.append(str(done.name) + ' : ' + str(done.subject)) + for team in teams: + teams_list.append(team.name) + tickets = self.env['ticket.helpdesk'].search( + [('stage_id.name', 'in', ['Inbox', 'Draft'])]) + p_tickets = [] + for ticket in tickets: + p_tickets.append(ticket.name) + values = { + 'inbox_count': tickets_new_count, + 'progress_count': tickets_in_progress_count, + 'done_count': tickets_closed_count, + 'team_count': teams_count, + 'new_tkts': new_list, + 'progress': progress_list, + 'done': done_list, + 'teams': teams_list, + 'p_tickets': p_tickets + } + return values + + @api.model + def get_ticket_month_pie(self): + """For pie chart""" + month_count = [] + month_value = [] + tickets = self.env['ticket.helpdesk'].search([]) + for rec in tickets: + month = rec.create_date.month + if month not in month_value: + month_value.append(month) + month_count.append(month) + month_val = [] + for index in range(len(month_value)): + value = month_count.count(month_value[index]) + month_name = calendar.month_name[month_value[index]] + month_val.append({'label': month_name, 'value': value}) + name = [] + for record in month_val: + name.append(record.get('label')) + count = [] + for record in month_val: + count.append(record.get('value')) + month = [count, name] + return month + + @api.model + def get_team_ticket_count_pie(self): + """For bar chart""" + ticket_count = [] + team_list = [] + tickets = self.env['ticket.helpdesk'].search([]) + for rec in tickets: + if rec.team_id: + team = rec.team_id.name + if team not in team_list: + team_list.append(team) + ticket_count.append(team) + team_val = [] + for index in range(len(team_list)): + value = ticket_count.count(team_list[index]) + team_name = team_list[index] + team_val.append({'label': team_name, 'value': value}) + name = [] + for record in team_val: + name.append(record.get('label')) + count = [] + for record in team_val: + count.append(record.get('value')) + team = [count, name] + return team diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/check.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/check.png new file mode 100644 index 0000000000000000000000000000000000000000..c8e85f51d612c626d167e4def7bccdbe1d6d17bd GIT binary patch literal 3676 zcmcgvdsGuw8jpg4iY%zK;)6~HwPkUVnaO)JDiRS~W01#+Tdm%CgiJ{?ab|#k+GElB zs)m`Fq^5i_*c#09+YQPFKr}nwM5Uo-TAL;V~rhtuFtx>&0g#C#25Hk&m#sUb-WA~31MBLg4ikrG=iSUHIid9Tb1 z9z?MSXrWNHppa=`3T|)6tVasU1O?OhfLBAPab-$=Aj^bs-a^skcg`{z&c(Sok1Rnf z5yC>1Y_<@*U9)a?2rbEDiXfxl+}cG;IVE0Blf_9wp~!G!ilE2DR$`Kz#XXhg1%^X- zXt38Q$b#e)IuIe${frbc@94mx((??I^YI-(m7WmPOQnh&kOeVE5L~UXliA7*Aqh2! zygrHdutKqvq)a?GfU^Rbv!F1L2n;u3q&9~jDV>4R8gLYj5g8$Gdf5;PM8e91VHO}tH2a0L8XijPj4WT@OfXUAT zJnhf*@K9tDMU;r4{0y>T@q!c#dc9U3Y|rFt)F2wJDdXk4$u2;9M#3=B({jWE?ZT8AH% zg#Ynm7{OD-iERSQ3q%07QcjdCs6!Oo2=IDcJmb$VO_7HU?ogqWL}USZT7WtfjpanX zO$@a45~6_o7yUgq;$EyC{@)i#qZ|N_R=_bJvw}bMOMXYUaeIWvk1PbW5LY2pwz5%~)8GxdCY^PssXRx5eoz zoO^~fem~r``@rOd6TkZU8il$gE8}Oz-;cgl{mIK`Pdv;QZ%-|s z|GM{J*isd7WKnONICtpgNp#AiUeQbceyF&&T9d++kK5LH+xFP3BM=)2;)S)A$sTiU6of)b*Y#j{o#0g@7kQ@$&^?Xwd#C) z*?`OMhxblls7-52Hx9e<G~?b~~OYW?LWQyXXH zri{BfJ2omM>(N5CCh8@jy!2dILd_cwrrn5}-u1H`e?0w$}WEW5P9XVW2;W}-E(N#mKb@>!_?9;7EcMc z{$}01S5Kra9GY1>s2abs9zQ>M^!2#Wa|ZgdtCP$7HxD_{=b{ky&9Q_CH6!ldap(T* zf}8Jcd_*M`3GY@f|5wb3WaRUu4KwLk^ZH)Cx@g9Gqrd$0VaEMIzioWH^;l}xdpp8T z8}{xXW=4I#;LY(#$DH;dANHu-yZ<(gnNzG17ONUnb$vS3 zb*fD2Tp8xe4);ae*%)~z`kF2F+Q6#SXw|Se#$N^e?zR2i*OIq99+Iy7|H~LN!Mc6) H^s@f|!zCx= literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/chevron.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/chevron.png new file mode 100644 index 0000000000000000000000000000000000000000..2089293d6ad94cfc015cc0a8c07bb03efd4a689e GIT binary patch literal 310 zcmV-60m=S}P)fLA$g5CzAh99{FF(tp zz^tD4))$4c^0SZV9_X~njUYum@4i`~v!i=obU%PG(6q`OMK>{HG>r}*tHKc2@w+qg z7|l>B76qkX(U2E&K_1Nf!JbCtpGzwGSJ~CkU>QcDY&q>lnbwQm<|2>>iH5vL6qJIP zp;W{K-Snrb@Z2gLMVZAQQ5jU>DXT)0mtk@hpq-Sb{2q6{0V4Z;tNXT3P5=M^07*qo IM6N<$f_?6Y+W-In literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/cogs.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/cogs.png new file mode 100644 index 0000000000000000000000000000000000000000..95d0bad62cf22361b148e1d6cefe2ceab605955d GIT binary patch literal 1377 zcmV-n1)lneP)lH5n~Zj$eiG;8wLI!*reT1_VfljL=sA}=JrOptsX2RfC&)+l61t|6JPeb$mZ z6v1wNClWXiLSlOh+mR64U7bjvhva*zJ0HRRaDbgl@(q$*^PYf*$fE&7)c&&!Rfm?&yLyFbQ?2&R6W6v@rWu!;bZU9|_! z4Je^Q5$r!vH2{)*ok-wK1%Wz7TG;LgvHhtN39JtxLC&_yAzs|bhFaWtFLrukMR}l_ zP~>z0rF26#(W+H@aXx?6lf(f454Uv()R+QrlZafX3t}g5wp6-Blj;u$XaE#h->+xC z005Fp0GtMpYoBiuo)VG0UP0_GltOix%1(%-bKgbA0o1pB3&6VoRs+}%fFWUi1MmQV zmjH~{WZwYT7ng4njIz1iD4PuYIM&NvU6NVO4kNuj`IZ(nzL#XTM^~@uFGT>-aT6dh zAgaP68%9MDu}+cu7uohT0RHqW9d8lhD-kJqd^i9;Rw)OT!X*D$Y?MvID9;=%I@23T z$~m4}V3f^0BG}d<_%@?#emG&81LI_NvTQ!T$gzGzil=|K?VCM%e*mZ`d`!0R--N(> zX_T!|fX{f;z6ZDfz>JL{bFu7UqLI0BExN7c!HmOYg;$V?QB4==-_|4!R<1p=W!b zXM0?cbrc+q5buUe#ZpdV?VzCxk-Rm+);3(wb8q`(#{e8FI_3z8RwJLQk>}&nRHK0| zNhvzkFo4$qbT=sr4i@y>Bdr`7j(HfwmH^uc7xH9%r%nnDB_ty3>&opGxGMoP9kf;< zd%_$N;{SC3V62>WZcCaxpx6frT|FlOj5R5zGbh3vrqY>j1H`{Bkt_d-PcIzGcOeS& z0OimpMB04AZ5M$FkksHx)9_uX*rDTKrDER^Aij2r>}i8vD4G(OFwKFYV|^yVP5w23 z`asH~GaMjZ={ojt!?Lb#lcy352^1ZBLpqIV|5 zLfz5N09ce%03XI(J-h5`5#>QuTr`wWt<}xj9|=Odm?U{1pyiQF6&>pYfaOUB0`PfX zSMHvKeKvO?5vfw7-bq{v4vAnDh^?3%L|Q@w6Pmd9iD(;0IfB{ww?bB5NS1mno@&9c zXC4%!P8Bklxq~Ew%%g071mXR`&iMY{dhWR!JtLt}njRD_-Cxi%N0X&qj~Nq_rI}Yn za8e0TJ(H#J00000NkvXXu0mjfE=YKA literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/consultation.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/consultation.png new file mode 100644 index 0000000000000000000000000000000000000000..8319d4baa09d6afac9362dff318f63a0f96f555e GIT binary patch literal 1458 zcmV;j1x@;iP)fo-7eN@Nx;}%h)9e^5-C?E zsEH&b3Z#%2B-}L7v^LRRD&QZ8A<7MshM0yxF7rU)x4)gW;*vW;3 z#hX3&)M|C@Hzy`0dbVF71Cp#6E*?;(1E5ZgN|t#IpsRseZTS;fmL2OZ%G1F2%+iN5 z?1unK-3Ni+4&6W$B|ic7=Z$mSG;E8PyRX^_00(R zZhUjoBfjtdy_aS#1FePDP8??a5dOFCh z*MWRv)G@zc9y@oAQ6L5)gF{}MFZh1tt%7=2kn>q6`mgJDye)VpNyeX>nXy(;k)8%5c~P{u8)+YKOVK2Ka7pM_X}a`O zk#~c24MYp^y)u3b+*+!2>R#%t}=?wy_< zpYKn-%7CQNC`x``VuKC^f_Kx@zC4JDHDk0HCO^O4#RC{@^;{j6<{9 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/ecom-black.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/ecom-black.png new file mode 100644 index 0000000000000000000000000000000000000000..a9385ff13f696e96d517a56ce2b2ff7d282c748a GIT binary patch literal 576 zcmV-G0>Ax5}Z)a!cc0ra5uqqg5lnhXD zTbP_`oKdQ!!sJxrjN&KdC#M>hn6H53Z@_@W06J)|I<5r7bODP7TpFfK@D$$y9ro1J z_#n7|3NU9+Eg3t67i6kk1G7mAm}&y~>LPq;59$DNz9rz_PKFAe2JQYcbvs+lNHw^F+;#7cCP*z(AJ2&$C0H1W+ddn*~CoC?@7snGmV!9 z<==r}6|tyA>`?)>6k{b=2d<=(_5rWxzxsKgUs~Q{+du)!y5s>SG|Pu>T2kaR7OcV&-NYURtom{p?~^a9V+ z7O-a3C?=EC%HIJ!R*hUb72^tZzf-`AuuDDSkJJnF?!xs=oN3JbnbTGPz&Os^S>dl1 z(84w;APbb-b_k@KC|~4YkNmz@^KPH*e34{*2J>2yF9_24A}NIoShST-^{Ye_(vLmm zd~pgm3F$kIkw;g)NYXe9tbV#5fWaonr$h>8ffe1h+u&f*`C7F2cl-b`l5Ye!`u+O= O0000##3Xw+{I#MbTYoZ-I?3FUBiCh!QRfyd*8S0 zzBhAFP*6~?-lzdrfLY+Hwprk^9?LDGz;$2=SdFk>z#U*LBaI?QQKD9e7VcUbxCb21 zK<^(;Xc0+8N7+;0G_au`qDwm1ixh;r_7XS;lzSn3Ks%r7fpFK}0T+SIX$T+G&OY=( zxNCJ_5*Q8nGpO{QD=gKm=?w>jvsI4EeCbfxmVgL)==l)8DLS{4AE!e?Z8#kPQdt|>qP=~ z0Jlc(3Gg?f*M1lL)`j_1YkWB%UdQh2b66h*ZnCzsy7n_B0ckvzW`}^r+Q1XwyiR6N z+Zb>`kF^u{kzSF3ZWCxE2%MHJ3h_5t<4fjdNthVL50AOsk~o%60t*2`LXkdVyV0$h z3!el&2Fvm1lW@sw^on`m-Vx`wwB6`P4R}rO zE6^)ow-A5YnfJ&y0Ye!WLUqzpz$M^$fY4`p?Mdxxh|Yg2?gAd7ipc|DXJ`UZ90Kkq z5IzMQOgng*oJH-CT;UDiOoqC=IL6w|-va-Bgt_N1s&c*2*98Ry1?!OCgV~htO4sqyP_dDm_d+wti*Wu|Jegr#e_!#{@68vYp!)bLlu6Zk`LG>4b) zEtVJfV|c&7EyFk1UEqgt9*;Njw1VZ>g|{(-Ih??2*p8dxr0-%j^2hNC#&IhqaU^nc z@$+Ql#-r}>$jwGuyQA&xajp}QpNYQgQvRX3un9j@9GJrg7>xWw!mm^1U#(2=6#lMo z|KQokEyJGV*$a3$^4H^V!vBQLO`Y#xXJTY1;rCX!>CE#}6@DtiPgnT82{)9?y|d)x z(wYD^;79DoMQqIQU*HgKi6iBw;@FUI9sNVmM#^uDbMB8mr2J(psR`f_e2lfYQ^?Pc zD*O(-j!VKyGmVpx8^nFlK|*>Q!@2nVHmt#iLfSnlYCO2 zdFMZq-%%fsUm+%4DcBAM@nlB#OJUtlu?=@5vKyk0-(~c{nEb2TSI|FD&|jC)U02XO zP_VtPpg&ess@n%zfz}7m^l)@9-pa_g6!iB9hqNkI7IY^HwJpfkw1vjiEIS#Wpt0?`HcKIp}DC=(*S1hNk)FAp#M3(Ph`2hp<^Rwd!~tF ztxuuW2aq1-#_&}}?@!(9I-!5fU3;7r`rs;-;>L{bUqXMKVkK5&4iq?1871GE)(+iE(2hg+zdgWT>s_5?n3yszX(6k07r<#7z+xi};Iw>y+AElqG*-EPDTmCjr_EtL l9oc+vR{1Wfk3Rkj{so);rk=IPI$i((002ovPDHLkV1j5u&D{V1 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/license.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/license.png new file mode 100644 index 0000000000000000000000000000000000000000..a5869797ecaa7583c552c3bb7c9bce5910df78e0 GIT binary patch literal 1095 zcmV-N1i1T&P)?DLX z+1Y*BO%2WWvTu05Ki}`p`@J{sJ=nx1)&%L)P@|a%i#deKSU(9Ndee~mRtn|o9hqkt zsH)g_?j-1Oz*{rH&X9nd_6n5~S%#SclCXXhkhBHYOR<={+%T9HHm_+Rj=iH!?az_sX`LfziH+4|52SPxCd(lFQ#& zy}6O4ybXVUJ6qGPGqH9kZO+TqO1)ZNXdyA~iK zjU@8F177OZcQq)~$=N9vU#B7D6{_#K`1J!DzKA!x0H-08MD^1m@!Cu1^1Ay68A9JiW%_ zS;VTfBGKSzreWdMUn09>mmHnKrHDNn2a^cnnZ|MXDzMjuSf_9uLfT_HXSmEliE3?k zXG5qm?Zm1JIMsm2cnJK_V=hkE@UzgSfJcoDFQBI%WSu~xnTe+6cI1o%43w{m$eK<( z*6j^w>_69x>X$9vq!B%D)n2i2Fx3eCH`fw(T?A+}`>a(i3QK#4M*6$U2tPE#;4RnK z>mxwS8DJZNZzlfX70^76^jmNLyX*lJ7YEWlH{ zcu!SGBHwAI5D}|zA|-av#xj{i{y7^5SAdUFv(H6FZ!P*Haqu>f2gqsj_qOq~2-w*F zS(Vp;I|v^e^)8@E=esPmmg4ZVjs4>wpR8c|FGJSOYN$8)|IM@rI3xAI#QT>#L{?m_|*Crlo{0DLwqmu7G?&JUf N002ovPDHLkV1nf|8?OKW literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/lifebuoy.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/lifebuoy.png new file mode 100644 index 0000000000000000000000000000000000000000..658d56cccfbc0e46060ad4850b9fc60c656baf18 GIT binary patch literal 1199 zcmV;g1W@~lP)K~!jg?OD%n8$}d;Z#;H3_Ux`{Y$>IOhC`GK2Z&mUBGl%91P8y|S)kfJ7y@Fv(h8fJTCuS1y-dl~V3Bn@u?h-V-e;5wUK!dy#X#2mo{Oe@Ws202*N! zUYebq1*Oz(7=|0J>pn(AT~tHi06fpT5Cp+8=UfzYF~>QdlTyCudEUcDqp?-Q3ClZy zh`8_jS1ilAN<>A)|0jSkVOiEy-}kQ++2pw<5YcQ91S^cOdS0R|Fvb>wAgB}3_lVdx zo@Z(pi+`PnCN6%2qaJh2n$9r_fQWby1S^wxWem84@B1sJuai*#Qp(HIeDX(8DwXO| z%F8CUnE~{Az4MH*g_Fz52gcZf=Xn=0?a~H`hylQ*oZNq<_}k0ls8Xpc6H#iiO$}f$ z7+lQz-Xr3jB4gvg7!%!YH+A(>1Bjw%(UgpcwAQ*+tJSUpz&ZeoCZ;U_SQA3r;GDOJ z$T;)HSw0bo%R@wVuh)CagoKDRBK{zR*fFtJO3f3|HAFNzMEd>yw@I~AqJ#bY{dp7T z002bv$W%N4fDmGbh<-J-uT(0DT8^y%5pku|M*#3XBv+M(*h9qcYPH&RL>!t5ih0Vt zUhhjHdIJES%P?;Pz-K~;bwmtD2ac^kEdHi}cmRNNMD(sw>ZYmi5uOi;=pD!w4*<{v zfK{c`>d}E?De;q!JM+w*2G6)Xkk{#{&dFU)|KBh!fb9Z)o)nlf5uR}Y zd|trusm)0`Mppsg1Ndk6r(q8O?g$}n6g)=1h>y{88Rl&O_*4k-$x*rHnJTQfhuU9KK{~ ze{gV+s3kFgxc1mJAwWb%MAv-ZUm~J%N@uP-7z~#3)Ik8So7O{0t+hLy&I_FLR}6^` z@phbH$Kh*4{3egHFbsdG*XzG0ji){Z*L5FjtyLbvcvB|f%{;ykQM#_XnP!t303zyA zsq`QZDWumnCUwuh==b}N5RuYsGT*~mt@c!Fo%$4}0j>3>Nw>~uBiXinKZ>Hx$z_=# zilR=d)w*wDYuue4X>6r_BNNeAsf38{WsIw8wR+FAJ7-+XA!5H;t=^mFN<>lA$s-;h zXEln5eaCU`PGe7Ktv4OVxtm8kK!NspT#NkddEOtDN@bZbcA|D8B1!;w=r~T1>a_U% zK%>#vBBJeXx4STU!I1-p7aW^eM`ao&dc|bh_WW=-{0Wl3r~lMizvej3Q$);_Ad@h$ zFS2H{DJ{#|0D#*mX186}-I$d4sUW^)U5g92(PHl7XX2Xm3}<-8@HhS0PsfeRnq&X~ N002ovPDHLkV1i;vH)8+* literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/manufacturing-black.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 0000000000000000000000000000000000000000..697eb0e9f2c06e40c9c720df7b80b8f6fac63b34 GIT binary patch literal 673 zcmV;S0$%-zP)xK~!jg?U=D^6hRope;$f(2!dRQAe>DQQeT=B*H{T+6R=CPGo?i; zwb3GCV`G=p7B(h-MB0d*S1Kujl2}+MniNSfJM7zGW^Qgb$r_ypLnbqCci)@+?wfB1 zGBPqU+Qfwk`Okp9XM78I>x?Y|Ll1WcSarsR1>c9|Nd%6=HgM!=YaZ@efV=JCJ_>M; z#tG_7>fmofHqbV*fwqwi6!_g1x2b_In2ly7f%_eJ0o+aC9sujWOnqs7*p2KnX7jli z;o6OCA9xO2jd1No_NTb+#z~0v;T`Z0zwl|`n*9F~cmiDUaJy7Xk_W&W{K7lHtvX^; z(Zj6p4`48cdl|FZyT#uaI>0^PBmPpQF;uv%TS5j@xaEcnsPI^=RU1CxAp>3Du_HWW zz$g4f4a9`I24ccp10CQ#@F~J=WS|GU0)9pwVB0W3xNXY`!W$Ww23{u$x9zmJwG4zl zNZM#Y1GyGz8>t31fw`hBIdgN;Ml!xCHr9#=MoC1iB|&YhBqA8G zu?X7OSOnBURJ8DgX)FXmEY-qi6Qc+|;sZf^#TXGy#8}J>ckeKJckY?{hP0VaJzj0X8RhK^60Y~Xz{&a9?$@^ z`*!wmV5Zy_F}!tF1}J$Bj0DI7)BwvuZXk8w60j{qaRkSJJyKzx5OU#xRG|a+LWHFb zOd6COC^gCslp0b8n(}BvP?neGfxW0~`7uN}P!H_L!mj|jfWyE~sgms!uaGmXN9#VL z&o{&wH`(XFRQ($pDUuL+1@xib4Gb0l2lVkR;3DeD8LS7k>f__UV1%mzx>4a$5ZEDf zFs9!N;)lCQb0feM2j7i5gwE^pjd8|FLg;tGbr&DyCbIB3L*hWI<61T88h);WH`i)_ z#w>i!kj#Nyz$P-ET7zx?XMsbOOtb!-1`Gk8B3ufXFR%lU=Ye?%_gs{PuhlItkT`G~ z*iYsNGy_*qE6PdWv?bF996`l@7wT=!Aca~OHVbSKIdC1d{b6GWSPEPQ9$MUMlmo*+ zzeDyaLI);$B1?p11lFKJCR&>;B)yV!00U$$m*(l#18adt5v~eYC$PgCrL2V#6Pa`s z8YOcQ*O0DT0KSqr0(GRrbsYE};VKANl_YcE0xA?5BdrDarup5doDk*PG&c?`vA8VaO=C>m4%I|X)lqm$yVLT0P+oIdY}GtOrO29vww9VSooqbBNnh zcu(I|YQ)0zb`*zp)aRe-TomMhG1NxyHQX;fPUPZ16kAXwMG|^ZYrnxPV4v0J8EW^T zsOZBl9Hv`x%N>1ggc$PASEFSIN{zAurN)2jfOsd(fgd5lQU?Y?lv>E=CtGh+0(VGG zWW%UGZ@o!Njc1h3(oB}@JmzAS!6!o=#PN)%o0h~rfH{E-AX#fBK07*qoM6N<$ Eg49ZXX8-^I literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/puzzle.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/puzzle.png new file mode 100644 index 0000000000000000000000000000000000000000..65cf854e7ea72e36142ffc1a407bf2b8355cc85c GIT binary patch literal 653 zcmV;80&@L{P)9a`;n_Do>R91)@YfrZ;WIBYI)WE@w%y z7IC%30~nX`B(&|Bi6!}ZGuBf8IAM^ zQA&SX2=P2@*<+`kI7+k$-1A&gaYV-{Ks?g2#0TH?II!as;HNYK-X1sS_e0Z#CLzvF_5wZZ}7k)9y#mQhdC00000NkvXXu0mjfog*sX literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/restaurant-black.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/restaurant-black.png new file mode 100644 index 0000000000000000000000000000000000000000..4a35eb939cf065c6f8cf83781a15f357348769da GIT binary patch literal 905 zcmV;419tq0P)?`PC*pLe{WG*jTWtl`Uu)I!h(oI7q&uZZ6pM-kw|Ur zMPftz3s_jOvBN@wkko<{5h@lmjYJTFNYSdk7WZDgxt))5&f8mkk}hV>Idh-qo-=c2 z<}K*Z0h|JE0{hdxYd{s)k+v@ZXMrAIo@0zw;4N@F7c(R11%8u|tpdl>{-S`voX=~= zI9qe}3E(2Iz)Gr4;kyl(s~mqF&>XN=fMdX2piMb8pcAmd@&I7Dz-K#&h$ije8Ud@c zgQt)P0N6-UPAX^wv}*@XAr$~{fXT%{gxOL;d7J^}NS&nu>IqNA5SA(ZHvoI3&Qbww zBrApmt%jI`Qb(zPr3MliEX(6AgxqFAfF%PhK$pZ(DxlHPm#x|JJ?#vOh0iFWL*gX; zvNkySP6D04&a{0VI7IUG&7=5n`XhX%X!6%0pdIMTwKt`IMHB^02%jlh^`s@_+Eq$X zUua7+@KNF<74Svq=fdYgTbhAkiIY^oW1*i5PYP{`fFHnsWN@i~VW3~=Tf~(@TO!~V ziHK=MH!#NJVMOxR&(xQ+UJ$o$y2)oaLNW;@b@MoYxa>1*DRX}LjYb1P&7s^nlmWWk=>z*h>g|NU{%5MtF5CHx% zsv|6})E_wVDBiwF?G1#>YfMYTD&SYd?mLjjCb;?_Zxs-Gkk1|~y%8;uG6am{&rq!N z-f4+g1^f)yLT_-QuCw0J!G4)Cg3XY f0eA)+t%bl}x(3Cqe?`Zc00000NkvXXu0mjfu`-q5 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/service-black.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/service-black.png new file mode 100644 index 0000000000000000000000000000000000000000..301ab51cb1363cb8a0063c4f9f7cb9cf73c91e10 GIT binary patch literal 839 zcmV-N1GxN&P)wG}3wsU*IR)z|Z&+>zafrqJwCq*x@FjvNVI2F^z|C zN%{bO#A+2K9mjI&psYL^8b1O*HWO0*iAfK zwBzye?BGqTEZN2s-YR-iRRhR^{{@@H!rmxCX)mp)h^Mf|a7g;p*wW?ud=J0RL?CEP zkEcMj#QI2Tc@Mv*2kEq`DKw7vdi=Jb&-aer)!-Z0qjz+QFK@N1&aRXO}`izA!9+A#$97UmLtKG(#D$V@JG;R0Xua%1u4_kNMazOP^ayYznp(_+pa zmHp&*7l9|T=r9&<9@|?Ko;a_$GXn6R3= z-_eWeE8>!NN6sWQh>p|@{|B~~h0NN}OyO(k|0o{Eevvy?ir79Q%G}xZ=i2u5tSHu2 zwf(N(bFnYJT6O^a^n}=lCZF8Nx;w2}uUkB4XPd5v`7Z>im~HzdJMCK7trz|-8@38>5jc3xX@h`{ zh@iEj_%)@#V~J@-!i)2n-XCy!_SC5Qyigi**PVuC+h<}!~>FElyR+PxP0svs|A}^vKikR z#>I0>S!0;4UyI{*IK1PzbOF;IshL(A_k5A?+#7WY^+>e^YX;p z=xW)DcRQbIOIo!~v-$kABZfD^J?Ag~CjG!0N_ye{SWo@7I2vn7n(V-R~kb-3M9=yBBG68O-n8v2ber%t!Zu Pq0ivy>gTe~DWM4f&Ev8V literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/training.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/training.png new file mode 100644 index 0000000000000000000000000000000000000000..884ca024d71ca9127a5393134632ee92a61b07c4 GIT binary patch literal 627 zcmV-(0*w8MP)Ji_yZ6G zgCi9sC+SZOF3B?A-3o?c9a^B`5B^xi{atdGlsx zfu5coC)9d9*W)+29w+CYx6HE5(7FIXTmz`}IuU&auvT&%3np6<$3JExZ8|Qv1`yF6 z{uK`ZBO-bN;C9iN>oGlP1At#74phASP()5l1Dq?6>v00$qR~ktYISg_G~Q>PN9l*Pyjm+=0joaxS5K;Rj(=Ddy)iyD^P2j9tz7$MRPPN-6X6Ic< zC{O?T4(yVQo5t(DjmAqa0UQ-9Bj}SmO~ZA+0wO7a=S3S8?~`nFrw($EDaoG!IQ?TF zt|2?U(I}QLQFZXyQiDB8SX$~v-8kVA@YGU+KFk?f>fJUiwWsHQ*BQQneoi* zIdjgY7w2;~&-47A-}lQiGr#AVfgU}2^thi$w2V8gP8xe`iYA|^nQ(?HLC@=`7Uk<}) zLeWEQiU$yZ^@<(}ZFDXOrZ=@2KTECwL3TGYp{o5;VR!&Zenfb(Y~lunk>o@WhF_@a z!ghmmZ=oQx3ZUrTMV_|@z*@URl_LrpnuMspmx02LayE1`&DBGH7 zIB$fJR!y{I;6E2v5gyA7yJ&>%uIrAsk}Qk0c3q+z1eRyI&Umi#qKMSynj`laxQDEG z$>9=BWqAjWxCde)_&ZYtQ_uHfppNAb)C&iMgDG4Yayz-APl492qWnZ z+2s4qPerk;Qd zRTxgcUKCf(0QEW%Si8S$d^23v9Y;Bm$|Jh7D5kUlU|v?DQjz!5DcCSIHI;o!&C;0x zy1x?jTA~w;DMb2S$s6C7*Wr6^*LJGyqHt8;>Dg;xBk)zTu^q3#d?0F4bwS{Xys;0Y z0b}%PxF6sy{*u>yU@TD!7kg>wn=-H#OA+vz;H27KSYpwM_&kp%X2ny`^Yp0@|(y-wyRtOEu) zkZMr2S!>sIk}ylBD^a-LQPoOlqjSJ;L-U^%BWoPTxn4GDGXiV(qm1VDmv{z1L}Jvu zn`vGi$NH_RE@&E5g2~Cr0o8JExjDBIzCUyV^vhJEFcOB*@hFO_Ws){xtzG=^;Lve_ zQnzMHdm+ztcL8TpjlxKr=$THQiK!@hAyIz4N4%2V3+2+10THPgVGEG`aJ3>)#)7~e zj-qI|S!^?IMA7OXjJ}pce+C{;_v(adyt>r~yRAcuwRTCOd=IQ`K0+rHj*6O7#^_|N zR=ZNIR{yzq^QL#_j;<2XwFs{P&o>X}q=;_wJnsh7KQIfj8}c9GwohHEy0HGyN#1EU zwtz&CPhEFtR77q!cFdS4^%iP|h}3+~+kwg^h2P66zKc$%k(WHr*_9O!^)V)55l)iG=bkroSVWSt8oK?9X|oC&>t|S94mi~JQz6J@L4Q+~({Wt+ nVe#UD%iYS|qeqV(_m6)8sc^)gW+q6200000NkvXXu0mjfv*t}m literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/icons/user.png b/odoo_website_helpdesk_dashboard/static/description/assets/icons/user.png new file mode 100644 index 0000000000000000000000000000000000000000..6ffb23d9f036834a32954f83bcfeca00790ee443 GIT binary patch literal 988 zcmV<210(#2P)cAU zg%n1_!UO~hi=Zajq!7VI@CUR>p`!Rx*a$&o3k`~bXb@RtC1&nyR*WQ@xp&s=+|MHZ z%qBDA%sD6P7W>?P9RqF}kWv6&A-zOAepFK7 zn%moe*=$Tc@)I0INT*#4Q(tpt!c>;Iw0DH*Nr(MZj6)>|hd7}=D`NRPh zXvGuSy!q^~M868;^;_^453rHAwcCa0XTYMJUi@XTxY>o~XCPvW7k?SF)lGsQoZDZQ zP)=G_j{)g77n-L5oA={)hSIDH&Cfs)ee1>VM9F4cXnqDNc7ia=s32eb!iDI$gsOi4 zLvKEpLvw7Jbc*9=pw+k^81;$)fYoTt-RZ*gtblIt<9DK%bYb~+p`ZNt9gylSG|w)y z^f7S3E5=1EFtYA*7owK|ZMZhYc+MxrUpVY~%?xuR%hGp%`<%$)6(zO(uDSg$G#5pD z;K6<0FLeNz{gRNEPQuWq)1OJI*Gp=<<_=N;X(Gq;tOM~GAMp_MS;a)29s}JqVCIjM z)b8=k8|EJXBpK4+2QuS_5P5?c0HB~e#B8sn^Ebj8h&ak%8{2szdo@hTfKXDKM!FmH zW1nf?P!ziqZws=70=&$bXf^g?93W~xqS9P$i-O)xkbdQkw>_W_=3j zHL&MZ+4h#Vli`J@6>FxCSeAZmS!$N0X3g}h<>^5?bLOg^ymRRmYovK~+eD>9insPXvj3+6Gb@v&hmf9xq1t2!EP|dQ8Gk{Nb(_%F zfZ2)l~DhpZ1%x!dRjm zO=;u!cb$X1D_}gv>Jbl6rqq7)(!s6*&8$S;I1dcnm#;8RsZyKh9Ozzw#ra8ApLl@n zmu`~X4VYcGB63`?zPU_W_r4w%$5|}xSP?5ge^6@en%S9MO4}qmpBLGc z+0FjUY-Um~^1{NNbKdiv_nq_2d}juhaAqNAYGGAPQ!by+?CdIx=|Q!EF@IoLzlew* zHqN3N&|>jiL`D#~5!H3TiYBy2#kO~cjhT*5UTf&o)WxJyJAvB(gK7(+j!7;TT0A7Y z1FE_V&)W$+3}iZx$0V2A6?Kio3}~@vBQg$L-C2d~l5BRYn{^UNAuSXJ5cvdH*O{zi zV%uGb2Qb}EY>Q0hdBTeCB5i_*J%!Y9hB4-|&cua_ha`5unC%@oF^Pv{Qs|lv<4<)f zUXLH|SJ!zQN!xgltnuI zA*#cGrK&x(v3Ly_Q|`zSxko)OA2y^qPL@<^KO#f_bvjN$1}w`3PIqAS3hH^A zP<=n*vz)54C3ehdJM0g+#tCDPU9e*A9n+;vw!rRxEBni5 z)-Ry*UUp(jA$8sBfPFx3TrnGPh-`L9MCxAWV%Y)pyc>XbNlyG}DwX>i#X}4RsyFRk zVEIC0wZTI&IM}qlEXaTsi?^UUPIBUXU{q}T#a4t=w~?!r^mSlaglPrljv8T7?RP}( z65D>Q9jU9ESY3A%*b`~K>IAlZtB6c%p|F}v<_biHP`wm58|VX$0ly;h9+vfvh)j11 z8_9sG3ZAzI7>zOy_>^pRvxuCEIIkl@7qaR%o>zf8Bd&3X>FJx35Dy`DKpiKGG2_6- zi1EL|_pg8qr_|L-ofg+klMsFq4s0+U^c|Cvl? zW76WGjRAGt5q$puurgxIe=ugV^!5FI`VHxE7Je0$oQCSazOkXL=HEJ@iy7)<8ccM zi$(+ef&T;QIOo)jsy2Ql_>yw@-e%|Y#X_Tj-|AYa)EhMu>Nvyr{xgBmKbe`?Dr?r9 zOju)E)IDj`^R}b-mDwQojt1IgQcl=+(LyKais%c845mdJTs}XVW{eu|uie$6SB5Pd25|YHf6OMZB Tt+q0v00000NkvXXu0mjf(ZE2? literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/categories.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/categories.png new file mode 100644 index 0000000000000000000000000000000000000000..bedf1e0b189ab85a0800d2bf16f8907ae0f9b225 GIT binary patch literal 1532 zcmZ{keKgZ+9Kav<&g)v_b;hk!gv>VTU}Ro~txRZnf7vk1>ts^0E+H?ytaOVCAAtJwqh7z>jo|))?0E=;^I0L}r!q@1EP`)*ij%*d2<}K;)isHiUuO(K8sRsh z-Pis3{YvV^@OQmmNs&NQU=)KXv{AlE^1MknPJ@r9OQ`&Nj0POs^TNY&qa1m>k$^h9D8PU8DqJ&&5k(K{sH@ z>V&X6c_01q(%2SvYvLlvZnd>@@hKBUnCj~2ChNaWzfP;#&qp?|WQ{%Kh@)Q3?|Ni0 z=(zu3N5auKDLJw+J9M|2X2;&ImwC4Jf<@^EEM+385H^D2h1?zJ3CZs;Z5fLh)hk%5 z92LCeycC`uoi_YZVuu}XVj@bJ4%>5%sl%Pd2NlL!H`UvThTU6LJEXe^gn}6qo&D*^ zm^{E}_)%2m+Lg7mTKSD%vkXWsw?3^(z8CV2X1=Ih+$)FISZ`Q1W>#&(U;Pf3754az zInOwxDLL*iQ+nNfq^Y+ffJ{jKv)@>P_0P3jxYZ!D3cFG&Z(+^{gBw2KslvLZ6k9pp zcav^CwSZWm8XpNq>1*NKY-M4jgw>z=OfFMf(-%Ced^p_UI?=L>ul247laA={vAc40 z&MbkA zQp*daY+?&xt97XHt%JJN_4~;wCD(^h2BpL1xp@X^wlU;+cG@IQw(58Lm3j6ZZ+dn9) zlL|m@Tzt8QBUiJiT2oW)3o_`6!%f0b4fhFzCeI?t)lB#3@yOj}Mt_vsQ;lPFV#O6{ z#%pHl7`Xv@3G+~0gf4=9HDk7006U7#X5b?aGavvftd$iSYlF73p<;LAaeMIAHoLG` zJQn*_0WSNWkeD3Bj6U{lp)90@1PP}9O<*$<8L4b~BJ10ZkX&2>Ie_fuMQn7To%{z~ C2BR$i literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/check-box.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/check-box.png new file mode 100644 index 0000000000000000000000000000000000000000..42caf24b98062c6ea6bb4a636808964262e04e64 GIT binary patch literal 1118 zcmeAS@N?(olHy`uVBq!ia0vp^3Lq@N1|*eVE!z&HSkfJR9T^xl_H+M9WCckkdj$D1 zFjT2AFf_Cwy$! zfk$L9kWK*O57|!VfeiK%PhVH|XY8`f{5%sry}!V~z%1$M;uw-~@9oTZkKjO=CD^jHr2-Ky_r{i?)~S7_ckB4oN(g5tYF>c zecgT2?!-)3&U=-W^}*{P+mk1&m|2o@3`DB-E~qm~>F;-*yYrll;YLQry_@%LUb%8X zSjE+IehQ%>T3iJ@vm@Fq_A2$CQg(Ju_%mzI0*!##akKYr_)x8V`IhX8_~|jz^_hE> zd;=LayyV?Fk7K&Tx^-+XW2{W<-~V5`@89>ZwyFGC>#fe-*%zH$M9~KbEpB%kplhyQx`MYlUcye6W&9GPaJX2i3?bob^ z=exg^9ZxCxM3D_VHl^jeHY`!8c)H5wMZp^0bDUnQR~=%Q|1hPlj^%al zjs`O?=kPw+Mb0anZ@pqaf4bYWLWeaYbK%J(#?C)E8yU{u zTrOT_@NtibABP9W1^0$+d-vQ_D(lYg?oQ;m@a?L(Z{C9mLOf|(k3Z&gc6i`$@X)`5 zj(b<%uQ*aR(a3;d>&tK7gM$+}IPUzKI3?xtd={Saa$y6>?~&_*ZG>w7{#DSM$re73 zo#ji*{q@_{ugldxe*4`p0=f4`+#~FJYD@<);T3K0RTVZ(~IOI{J%W8*u9*WnXM%N#3}+n;w=F9$v#T_3ILHv09f$= z0PI5mfQA&b*x=X~-2b*97_-TaA4aVSZ19GdIft|9@!#C?$B(cJPz2G^1hfc}=H!$h z9#k8!MN^`&p}kYjYbSq_s3S!GnwCdX;-6K?>A^MlW~@W+hr1_WWGxPgd2V{r)k%}8 z`@Nt`HpQ1%gw>PhZxP~)DeN26sL+QQU{ z8=X<#AL%T$&gkq?(a0b{u))BWK7;|3><4RK5J@RX$ z(S}Z}XkyR`Cl$7Nme&@zL{?CO(=SFeS?(Ug7^y~jPwq$Bhw-+z)>A7RpO*1e4MwGS z!?tam!3yiN^P^z==2Ymif^Sn_MMZt9@54&BgyW9J6EEZ>7oa+7Fgzx|yzbw307XYE*cD0uWM1t?sq(m z9jBP~NW{6Df?8;77_ai$)T`wdKc0X%#E)|{;eJcBhe@f@T)URJue+whDml1xN zmNk61-cbkNU1R|d;RSR}>Pp7Y?F>1OlNfN&=47KVbsz1e6&y8Bh{?cg&1Ig3W01Gv zC7=XiEH4Ov!QLP$LC5WJ9~lk#6lZ-T{B=vW=D7F#K=!-_N+yGmza~Cwnx=Xj)mX7z zOsJg`XhOIrpF3Ee5$Y!;&7`H-MHfA>{W(gimR9q3_d@AdIN>y^r~!^0L3@6yh{FJA z>EzuGB&7WeZtLNXZwe!lM@J>y-=h7@#@G- zXgt!HYgpi<3cuG<_PM-k4z6eGo;5Ik&8_$?xGvg!@iwHsU`34@

a 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/cybrosys-logo.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..cc3cc0ccfdaf8dff2e8ebcb010e24ad9e636b494 GIT binary patch literal 4496 zcmaJ_c|4Ts+ee~9_L1ykELnyzBVia~&-m1a*L7d_^~e1@Nsji%gal*+xVX54 z&?rj`XQc1m`}jCd6Yg`9oI#pqg{3)@eQ6;$Dv`^aK=vU5(E&I=B8G?~gq?dqG~wdf zqegPU(y(^N;dpX@4sI8t6BxO`UzaX@; z2+&_iVeK4&NHUcO)YmzpjfWoA2O1dZK#%AhHZlSOVY*O5h^`?7s;3P-0za$^hrxh< zUm#92D!~_yv9$g>7H5V4ouSbva0nzMBt$1fPlrtPgFuapj3Bx&2n?ppL1+hs1=4V# z+JQmJzZEQrL3k>OLL-p_fxC)0AM$w`0>sJmuO$Rf{*es~`nyb=fP|EF+}OBjU+!4QMU=c#zk#`!AmhN8fcR3eT>rn->H{=ci} zc!o?P2c02PfJo$S)r^4ZCrE(=a!8QIFOHoZ932=$!v*4rXiEf$qoPA15#UBv)<|;; z{lmIQBYh~;%F+;NXlQsCW(9*Lu;@Yk~8q<_x^_OE(>a|!>Ri{8I-A)I6&yPNyJHv6}W(?PrDKdsA|{L}oz zKu*U~IjxP}n9}0n66Qi%n!AJ!&v^;fxVlPuEg;4hmybDa0b&6llo)TD!{rz1?G|sY z?{{(8N)boemMfLqanj_$bm*2_t7(#w0Ho;4=9U84DxjhQB{sl3(hzgkpR)zTreIRUgc6u>#eIac?F9hUSb`w zbARaflwKT^pjLDhe64EKYlc{^UeKuca>vO1lzqahh?RgJ4IQ8I{ z8rfHe=r<>X?8Q|P?@juSC3cD-+-08jRRMhK{*%5Ov( zc{f|+X1t#!mi`gnMa-*UQmIbh|gEI-hjVi zPgcs6F))TWEtVibn7Fu*3(m!w>J+YgFubd3dxEa#{tEYn)sIce^lI(&70%hSd9ku_ zp-@DWe1{oHH)bC6!>zZ(rd-RK!D{gNAEv0nnM?bn&1x0EC#rf@QKc5qw%xZ0k>kyf z>Oyg?;#Ml(&zc>==zqrN>XgS9c-8jP4 z#j|baSG3>o#?G?K7|9}((IrW`hQi2cwA#(Cj{}Oy+xo;h_s%6_RX3B$*yARn)e0lm ze8O}K&LRiLoQQQf2fN(0&N5=tq7+!O3L_$tn7x^I3a@5^yT?L%oPDek-NC1oKXgy- zy5G0a~?ul+Er4{m-ZH}S||&b*sX{FNNAGBe*?j3J=4 zRaTpL1a)SqR9wsC=-NTFu#*ar$76F_$t#HS!cZSu!4Tj#d?fo3ziul-*Q$!`GA?os za2T(Rxb4M0;j>rpNkeOG$nDn`iflGNzl)(f64$~;=B9`|Q(U?88MfL~sOPq&n|U0j zYj*VEyB7d2@#{hgBk$C!Vx3Qs>v~0wOBn9o(T$C0ouAjg7T}>-HMfVm$nfCmSryCv zr^cX0k+_(O?}K$W#95}}g!=Zh3&9p~Yl}sVDyMp}Nkl0@X2Yhfj`yO1#A4G{=dlq7 zj(|=KTWRfvPA6s0P|)x)&s0eEhdWUss&qsv;{9`JX#l%SxmoH*6?t{=z>)e@8?bS- z!#iHvsH>@=C*rG_C8on2MwMmaEa3~|$i9~s)$ef7;FybReLIZHS&MH)1@j6VPR#6^gK;&Q|SKAQli1bF2R1r-yqn#dE z)VagwY$6=EEvHnN`f|tyd=Y!bsh(#NgBTEjHrqm9o};VyjFGDztwO`!Ok}ZpkPU%= z4;x8nr2&trh3EnFM1Vqi#3iAx5ema?tM5=r(;_H+f*x>rD|<|l>LmpEuxzF#@y^Z$ zyb#T*cv;?7xp_;vIwCG_MO0d3a7O(7j$m?FzkU%xrQWKTKi8?5+13k6SWC)4NiZV0 z(zdUr{4}2PSJ(Vz1#7GSD)FsH+`OFaF~2aH&0hHQ85P{(Wl?@FLzi(I%e=C4f@S+t zTF1;o?9wLL`VXto^WeA_Eu^ZJx+$Gp!PL~c8|^Yxr9Qz?LEyEJ$1Gx}LrqG147O70 z>y^ImFY8B7L$dO7?atrccNTrtLdscMCIfUJ`1Bh*wGDN&p`Dr^*slvReo08o@nm%X z++>e@Yzei84^&Jcj@`H0x-w_2j5l7m*T}^3Hwnj-YiA-;2etLK+Axd_h;-S!me}cU zX4-4~Bd$^0o&m2y#siSF<5e}s z{BA7TKEepU>o_^lX%As^!-n^jJp1hUw!<`MTIvbZKs}XM;qoO!*)X(To zkut0IgXW8dr)#d-^qv2SytmV9V{kQDtgOVp<(PArl}vzl5EtWF-_rg#gWzOOKOqfI zu`+pr@Z!%4%#ROTcbC9h(rxlo-+*@av%{hY@7o21{IB^SzfUbYOKPXn zsTl5;#E_;qn^~PL|2%O7=OhyboUQJ@tQ8OLz4M3bSx=>eNt~dX?r4JS*!b@ zvCt9Z1D<}BS;kU>5;Om0%klX=di?@VB)l@t`&6t9nX*ewZvia#rj>n8nHCaC{vsuP ztM;Z!3|2@zThHJ#N)bCFD11pf!}+J;m3cJqz$^>YVuO-ROol9 zh`@Z$lG88qkif%!jeby5#WmAhhK2O7DfjoQ1jRQieSYcK)&j20=MyC#Te{V&Ufmgo z4Y$RAY|b!swp4|<_(<}Jhu)I({t0xGNiXvH9C7z0{J5^k=W2|_8cE`neg_V2HpBWy*LZu*b+uSO+CAw(nT7L zw$wgdFuCsTBtHjIbqkAjst(%6UiPEMfLVAdTQM0yFr&3o&h(?K=p%!BOB*A28x`&)tayEki`I|eVr^Vs2r8a) z;ji9mV1DvGdf}vR^&qf>Xi{)iDQZGnDT-axn6JgOZ`M9kKxsdm6Jw(a`*H}5`}71+ zpz=P^T*fwIjY58^NP>Z^2H(I_3aq#s)Q0)LDtcg@JazQ>*dNVIq9 zw8*|lI22!ldMjBHIn-@zH;+G@z4%TYPk4&qqf2Ap^=!*MX$Oq_JFW9Daz|Qh)G#vATn5({1CRFC-8Pct&4@Sh=Z$~A z*Ykmx;E??WWA1G-?B+UTmO;f7jT~^yTWpY;`l-z*FAPKJJ<+PUI{KID63kexCHEX)L@SI1H1gBSVwqCiyhw`6{iuN)_@7Hqgd3 z^M!5rz>JU|;bwR7uKY~l4;gmkhbVfCAy=15gJf;(cMMcXmkSz-$aGEwI9ocu*8CP? zxdm*$@5R@}2mi>Glj4~p>zJ|`iNn)l;vOp}Ul%xH=O_Gj#}%)HD-)e{agFfej>x;TbJ98OMzw`CVYje&LXuC)o5YCdm@^yx@&BLy zcG9H3f1|gbn{)ESk8I)Bn$yk)1@Y8N*ht!RceCGGxPyV)S)^I^u#4HYy47=|pP#Gw z&ZlO0wWj%5$mi|(iiU^IojU*o1u_daerVlZRdr)+G|yZfEuN-Tt4hi%Ef34KeczsM zd|;B-x04O8Z>qPpCVn!gOWa-_vg>KTJhSAf9}L3ItjyfaA^!Zc@8@r}-*bN6!A}f5 z|Nk>LAOFv3Ys>uhLZAUx2CLiaMn<;9Uk^AmU#v8UV?;^#4tSj)~P)pL!RnU_Jc zLh?6D@tRm*FsYWfMwFx^mZVxG7o`Fz1|tI_BV7Y?T_ej717j;gV=Dt=Z36=<1B2sw zD>k5L$jwj5OsmALVOy~P4^V>!+=i0O+|=Td#M}bhdLE`3UIyx6@O1TaS?83{1OUBf B&Kv*$ literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/logo.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..478462d3e73d73cc9bae9fea8e7f8fac84fab049 GIT binary patch literal 3452 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 e!*|2?|H>Z_>p))&1OWs90000l? zWKy}bLYpqAEQ(GYLL;Gb(D`-#IL~wb=zX5=`+48*`+lDHkMH++vpn2fWTn-m0RWIC z9Kam{srDn};o#iz@f{BYjOs*k0)QL&sI?$TaIX_`;1CG_67>Kel?4EQfvMC#0pJ80 z0A>OKz_uI!ROyu+p7!7YJlNF*2NE3LoOvlAr055ZFhBlyRK=FmTchU@1VS5t^%)rBQM9x$MwS_ zIXL28E0Jutq+4j;o%BRKk^5frRo5||pMzOotWxt7e`AC8&_%_GFa5wg4|BIgM?sHX}t!3?X6PLp4$UBYR*G4H& zMWX78_VXrTlyZUMxJRvzIRlyY?ck;R``%gwo;iG&QYPkRhHGmxV&U|J?Y^rE3saY1 zG~M-*5Q7+U3lPx5rh}=!OE26Gy*noAY^$SS1z(p>+80-3tY&2q4P(pi=oiXZbv==y zXNz%@hg?y+v5^*UM&psGr?#W?#oy?vVT!Nq;xo2R2u5H<#RL5qj7dO4ac@0F^!ngf z&PKr*uOm|Ap(E|9ZzYaPLWnC%tr3r8Ip>Osz(!1gNeva3Mwcv72UG3Cw(^a2VSqj+ zi^Gw7-K8=_q3X|GY3d)JcoS`y2fuJ>cPr!LN#P&A2aWB|#WZhQ72J@Mi-2%_f2*#Y zN>HTSP7l8m-qvJ*mJe2QXf)d?xw#rCH_dEO(a3Z^O8y(8pbhe*mx~XuA}pYj%F=G$6K(s;ly_O+L&wbDL`GV~pO~%~ zb-PH}OteCdwx9+4m(buZi#6EN`j}3e6EiuG#AL|cKo&hdUL+J{m?}#zsV1<9ax%nz zu6S>pFkEA{-8Z>oTkYo&~Ct(r52;n35<_46W44SR|=yRZb>u`vCFL|O%y zvHd+g6~vOiaEwWo&Gx1)vM`!ybp5j9d~a2FcK#-HcUG{IW9kF$JJMax#<6T@tbvx@ z$jqUkmA=~0F9J@|)1nwszzpy4gMpl7U8}JtE7}@?iFZV zi%UJkou|bMX>_Z&mia{Gm1ER8qI{S!4wYU=N;1}ifE8wL*nd%HI-fmC8l2CMv-R~u zvLDDM5}tj44JzEQ*b$bs1|hT<=)srdA^a+{tvf8CrMN979i}O4ehAemf%4cedr{mn zGO;GJJ6*4d5f{8kimVX0tGi;q66V;a5r+ll#Tf1JQR?ITA_3c#FgN#Z&wSd7rsk1# zz@rm(^=;c#Bj>sSsWVIc7rsY+Ik(`8u_yE!zp6Cn)=S25Z^cV3AX(?Dbv!U6gQlBt zNC{m%*Y<{X>)BW2u_SzBEef}Y{Dt+>dGfohq3m#N@KS^KHSx!Gg!cfYpwHXRC9@B$ z4an`Ay4?85=X%4ZN>1Uk%ZcT8LJ)2eT3WnQW+Lo>r(h_TX1>tfcWOr&Dyk3?X=J36 zKdbY6a*BJb<@)(GsIql|R|Wyu3I4h}nRq`YC5Rbn8xj`^0>Gd#7-O`RF~;gJ+QJrX zZHvb2LZfZbXvv51_x~qE|3ZlfOZd6KWD8G&g28_;Fe9Qv8O)$)`p=ymdGocP0}$|T JxMpl%+CQV6u!vJ6b2LQ+{ z08k|5Hl8;V48(lSS)m0K*v8qWXaU4Y)|bKr#QoPfLFWB}1Vpy6w*bw8ppr_kLt{~G zg3c!!^cfdyd+o&tj0-_-IqKL|DT#v*Tt(VR^p4|6prn%In@+FjDyl+Ba-xF~Di*o1 zx1guX{>c}`ffisl;XpCP%2;L>T(T8x-gJ;p+_7=b(m`FN+@eG_S^4z(swp$6AOG}(RGqLPX`>E|>w!|QLqhG3-1qHCT)(Q)h~`IeQAoQ|B(Fe(k=IQDJyJ-)3slV5N9QB$+< zu4?=JxT>vkq}G80CL?V-ntJN=@c2yUm&LetGTO2T(#j^OseJ*DCoC?G5Q?B&pWvkm zOYoE;DdcSqJUen1_q3ZEmgOznZDExTJ)V_&Rh)`E95GzJ4&G^q{F$r}|7E&o>+(ec z64CLp)6^!M!3fo%=MZluDcd<1WlhCFjp4Bl4#q!@b*1&Xwa{w%sl7v6O-=ScLhV0; z47)u%PF004qYRdY9GTLSaf>OCK~;YtPt6V3z-srmem%XD3*m0au-^8>2S>(GiYsD) zpO-i4^Dmc2^2iIJL37{IB_*OpP`gM*{r#;A#$k<&;^~d;9KudWS?k0v&zimPlH?|J z;knX-i?W2q)DsQlGC4*m`V4HUu4;M&+t4(GUC+0%aXetc60Y;`z{a8cy)H|gYm={j z;l{W9T$SPNFVBC(rBJ#sc(pp-rX=*iu67=eLx|jWLQcNE{{sE{`T7@1Z)9bD8zf0( zjj~_mT4SZ%t3rjZ)!{+2vp?nO{UgKK5#yNL>do)RTlsz2bB}HLdTS3{kkn^F2U7gp zeaCg}X@l?hW~nDsTvy+m_*r&&mzT4%)(9!}{CMT15>^6t%fNQzma@FX@aRa|1l0z*qvGe-ASXo+H75MF{hm1@$B`s6e`mtp!u{1kM23&ZI?Q~aH zN9c6V;=6*9!4dO;r|zZd$_WOZQV@&;NNnA|Q?IR?yF8?du)`6$l_(0$V9J1RKmcV* zL8?eOFOMC}v{Q;TXr?v4(8$Y*4M*d5teg-LQu7*+Szj~fKj&n^&=_#Bn>!WDNFV)p zKhqa@bvz1L=JLch`E!DQQi`PCX&pZg7N>Eq;&or4tJE-I1D?u=@o}LTUVUV9Z1x9K zl-W1V4UY3U$sz7&6*jVHxCmv$zDA`E312662$dQQFCCh1p7TfJ34T$BgE}dRTB|LT-;YEoNK7ViA>jCqdQH zKBcB6G4S@&$Lel2T2^;NazX~5d1xAxU`Q7a_L)UzJ8>v}+Nh30S#B5{KE{W0 z#*57t-V&9JQeIkH6N@r-4+)waqjM8>2F_r#b(0B(>Dx`rM_;dK`EU>?=Qro7lB?mj zx7S_n@%OR(i)Ai{8Me<&+UvtElV8*v3lri0qIr4s zu+es*p>Y-FhM%-{8Q?+x5Ci4jtTNiRdwT3D*)8iinnteUB|-VY!51KxoFN{psB7JI zKNn5!NMef%;b~SiLeB68D2@4D9cerQV-6f;Tjg~E` z?bzd}7Tt$!x1AqrR-WumDLffbZQ^=ao6`5U;WZ~2%Nx&p^xjAh*d9)kkNG}$%5A+VOdR^iev6_9*0mc5>s>W({cMY*pr&6E+Y%Cnm&&+Xg{{c=MKK%dy literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/right-arrow.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/right-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..730984a0635c971661c6ccafc2fec83a2dee1632 GIT binary patch literal 967 zcmeAS@N?(olHy`uVBq!ia0vp^4j?SR1|)y|Tss#?v7|ftIx;Y9?C1WI$O_~uBzpw; zGB8xBF)%c=0965n8eT9klo~KFyh>nTu$sZZAYL$MSD+10f-TA0-33Sk!B6Mi^+1ZV zz$3C4NGE{this?wKn8n>r>`sfGj=I%4b4g4AADwDU~2MoaSW-r_4bZ!MsT3Sv5((f zj=RO|;#kCS=}}7XL8tDJKN>$74xU}fF>8v}j2jEzPD!~~B4D&6V6&)t;iMZW0#n(z zM5Ri70$rZ#WgS)W=yTpFs=aW@vwOvPpZ>4?exP>p_lE`Vt_v~(ZHIzC=1bq*>z0|h zL$rJ5x+8)Hu@2<{TBXXnCcMxU`O+qJVZYbXC(k_;P{=m zoy94kwEF;O_c>0rrT6}e&e$-V*P8MWRF-G>B-@r{Pc42%%tE>x>1&hK=0!iJj_bFU=Io=^F7{M7dD=9_DxO9dJFZ;G)nC3NUIDloLooN-(2f)V94EWEpbZ~Z zma#f64Z4`2v~cT7d6xV)e1{w_vmT7DkGCt5Ur=3pHLa;*5f zc07h}=2!o+4~gCP*(>6B_RmB<{nj$JXpjQAjcb8g9~ebTzfTZ+G3jl;^Y7o%?q9u4 zqt|+Q)SXiP9{zRhqs#@~+wA#bT zfk+J(R@O0J6qFZ;eYtTmFny?&xJHzuB$lLFB^RXvDF!10BO_e{b6q2|5JN*N69X#~ zLu~^CD+2>trOB!&8glbfGSez?Yw)Spo(a^T0k@$fGdH!kBr&%Dw;t&%E;pba22WQ% Jmvv4FO#tlhdcptz literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/star.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/star.png new file mode 100644 index 0000000000000000000000000000000000000000..2eb9ab29f722b495b4ab0ece3ad21e7b82394f3a GIT binary patch literal 1642 zcmZ{kX;cze6o8)_%zz{|jy5T_nC3DXlBrQ{D7dhQ;$CJZkW?-u8k#BY>10{CONm2j zS(=t;$2D_paV=a*EprsoO3bpw(qZPuoHIYV=iK|<`|kP9`*+i+6h{PXBMbn5aCUNV zmvO^CiG;{%wRoyg2F1g6WIF(A&cnY2D#_-}K~C;u0Aln2;3fm`RrbV{01$}=VD2CQ z*n9vq!g&pDdu0pAA)=#$jI#J*-xx2$&*4tK5i%b9H>F2${jvtib|&MYvrtXNjmD2) z)OG-rbe$dSJbcS0T_J9h7=ba)GD@Y)Z4%I{m53aoBzyMi|aQIi2zE_#N__+%0Hh141 zV)v5xuhe>IzQVca4VwMpL#TJ;||e=cM%{MUEOMwYghQ!59{b=zmX~BHv&X<2eM{7 zJT{LNN4icLnLvP!Ewik?>43_Xk-W6c`%|~N(~8YTkzAaqSziUr9cx*2f;C`S`~LK_)qAtD+(@_ z6v)gsESJaedKJd zzMz`=g#GSPA~$k=udY|Ck-;UK7mXS^iJi>UHmr|=+dAkFfWO*vQtF3n``AUWOpI3? zEF}hZww+i>%gM19tGjo*w3hd8vdUn+qao=`9HKDAWo2bhnFHc|DnA>=!aD;R&9l;G zrwWa{zm=aejS%-0j~v5vqoQM1>P{-W3`>n-jAv(FHm_W(Z&AkG=F|jOSK(ic-5I2q zp)4Nr(r>kMkR2V|4FR2FtE>9(`mG_+yRU7hY2+g&CU!hL`;9QIiA=8G?$yohE_xEw)9HD{!>f`iy!}WHSiub;MVCN)k+@T?13yj(M z(wU){=%JR=)P$>47q{kzQ08MINlTgk`ZK3+cJZm))tuKtzop@eZ`mK)k_5)%yT-<7 z9>}Gn-m+S!GDG8%lC}JoekmU2LoW3`l}DF}z68$8dut|51%IB1IJv-dbq-=RL+?-g z=H}ajB8^x1x2RWPoD5kp^ImzQ|4BH!2EX=(xl8!F0Zc!ydxizbxY`!bGQy8pW&lifskd_1( zFYZ(53wrAabdp3|dUg+}e8=5%A|-3}=ymk=whX)8wAK1OEL4xj(R3@wdMT7sJC|V^ z|CRlxnxbWERUd83oF(h=9O)w4%Br^=^;tdl>2P8Jr}${b9}yZ0%ebU-feJ@{fnBBz zfGa-!2#}ixv)1#}|2o?*cE3B2V4sr0LpUbrqX$H{3T>_F7mKZQOx9b)1)$F|JAE&Q zk~~ENSjzTiKU4itCzMx8>g>~i?O)fwAEN9c)Q;mH+0mFo`w+J z!*=e&?(uBBSn&Qnk5{r7?c-OxFaJUbhB{pk_WapsiU)LORr3U6oHn`k4GMwBkwiW3 zD*crDtFt&2UOG^Vq{eP>JGmCMJ#_qOG1MYg^(i+MY4Mb~cg zU!IW~3F^Z|k&AaZ6EokH)C$R2*K0o-%WkMH8}GxW2eKL1pc4!k00xc07^5wWF%}+Z zGc3j&YqrY>jmDzU^5^=x{wIWl(OJys9}5vrqGDu%{(nEPSs{!Fc3?>OkDYB@-lZ}J NIO8b}Rk(wRe*?eI-Sq$f literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/support.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/support.png new file mode 100644 index 0000000000000000000000000000000000000000..4f18b8b8201e3a268ab1d8ceb8bf46d7a7a37dd9 GIT binary patch literal 3892 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/misc/whatsapp.png b/odoo_website_helpdesk_dashboard/static/description/assets/misc/whatsapp.png new file mode 100644 index 0000000000000000000000000000000000000000..d513a5356b2564f545f2edcb0b80dd3dbff9629b GIT binary patch literal 5097 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/modules/1.jpg b/odoo_website_helpdesk_dashboard/static/description/assets/modules/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f3a24c6208057991d0433784d202f87829211ca3 GIT binary patch literal 95200 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 z zWRcpQ+R&VE=3UqC^etc3ft?)~diWqopEBnmh^3~fPlv(t=dIG`o?q#2c0R<$33AV| zgwi`ur{+yVYT7x^u9TS9Ra9C(`+g^1hRxF6SN`MQp8Nm$EPCsf+j&89P-hC+tgdeXEOa3nRy%ssID545mVFxrwH!tVyKwIIU_oJyL zf4$&U-pP@_McmV2d__p@xsG?z7ak#hmDn^m@Zhjhz6FMDpwrvCy$eOKzEBbu(&!d# zeVYpzt92fWpz3v8%rW#XQ%{*Fi9HDv9a4BFljiee>Yyvk$-b`T0kELhXt-{7DaQH> zL3c;1`cyPP2xuWbqUaN{a=630j+>ez6nFFvHH0a>>D(izy-Ak%dFz)NH);yW?g(W& zRJsH0)3ZlSy9pU?`%c_68=`ZVC5x5`pIB6(%~pLyDxIt!XUa(L#C7wb$!wzoH_L~3d)U!@Z1Sq%GO>u^PV@zcYyd?PRuESXqylj}bC4Vq)1{pa^!J3)O+i*s3no+Fm?lS#e;_*BC7rD=H887rgxAC`FYDUAeSMzE|vU8+PVzN_o_kOQkrUMN#rgHjz zQ-qjjTvu>{b z&-@`0DmGEVf#GJ!(3mC3_Qg9eF;AKJg(w0M+lV+8wA9hz|SebL=xM zzwxBFlfcyZekpX&DYNKar;Y`y+s<^p;&hxg;xrs&5OvI)0~iwI*e%$jO2$*r(cOuT zgPWiqGdVazPW`yIneVI?HdE7U2EWvk&>@W%MKw!`=upLg52{7>sD59k2vI9(wi#}g zEqvJfn}N35horGWddvF{CMQ2+ zB0c>^c>djTv5NWdQeuWP6&|5>^MFY)V?7Y@{aXh~nqp7*%;l!WhvV`ba-*jZfkEv% z)F?V&*)GHsoRTkFa)YlwUl%J3|GYIt#Tlfq6*Lh3Rbt|LSmN%UB*)KNcfyB}9g^;U z&q{CTo$VleUW@y_Aatos;KJu(i$7f#uLXVka#>}#u^&ire)lYmNXoe|l8e707X7@% z$EG}|doDJ^)U4BW{4?JSeDVIHEi zfwjoQUI@*z;jMR+4 zHvwZmZzWUxwFRjD(EvdXarHr`A^mKl%@#*_CmLu)ca1-Z8hs?VeBQBX_3-@P6YBr} zHv0d18)^N;j{5(_j+QM*z2@piUqSh*`o{0?<|dOq1B4rd%G!t9>JM{N`}EJ8wkmU@ zP_0;MCXfdqf7YmtEr1L-F_Niz+PfWYMY9;pb} z*aT434A%5rb6Qhx_7|67ir@bF@juLF|D%gvHWNB+L@-HazVRo7YuVe3WqHm8J&Yo< z37rM4q+;3P0EI^L&yUMw7`N2I^z51c>WjyGHJL=ag^1lh#o5lI?Ev#KLxbVk+81c<= z08+=NqDr7ejOr+XH~0_9{=wS;fmFM`s*>bs+zuidtLFe|?yjp($Fb7z=xP&~+$taD zPeTB<2?L&RSEK|QhQq`a>H7;Xsy4xy)axSli*LTPNAfh*!WZ>2)F(E!-p+pb))$;` zW@x?GsyZa6d7jD3=GaKLQI(OY@;aBCf6f{t(jucax`xqpIYsY9z$TxOX$2}xVhp%e zCITPPjVZ^YI*P!u&TZLR3sOUiy4XA4LuIOG27@B1;lOdLeR+3SBy&aZ#E9ZSrDq*L znrUhQw|&4^J;J|wE~n(RbgNCn+(~nmyLuq`m%>xfi9**_1=ea0b+t-;r?EZImDdgM*&~%O4=IA@etxfwDSE^TDbjTe=Hb*h(VH^RHO0Q1h z;A&or!jAS0Bf$6<#O{-JY{>5m^d*o!2Z>C(7W+Q$mS zn3I>)G$-0sZq?2ihUso3wEzlg`}vuoo_JLVz0f&5xzrr|O|7R>ulDz%vBg$f>?k*KH^@xsj`Y>lTEFYlo zxI)XY&c6DbGF2yRUp#6l`JF}XVC$KpA=?{8vz(HH&V%xH`^l3zI=o}I%fJRl@xGkw z!iK;VvzM)kiHmLKZqAc)rg-}bK~ql$fb_A|HjU60sH0+0!zMU>b9L}@#oDy`z7@FKLzqn^(sXRj zdJ0;4z+bFy^3oNbe8-(4?pgB5w%MALvR!ClKS;+DJZ9q{%E7@1>hxM$7Mn;_Qnb0$ z&GfO)@wkt0T-&`egQU6(9?tglVwqATen}7WGP4?fs zLykD33Sh09^)I}hrS@lg(t{Mot9FoA0a^?1{Q3{3s(-C}8wN?ysMxRNZWCefqM@tq z5Xp@|QH>?sOq%7=zwoe|w#=ZnWr=eHFz&petGxKI1Rjbi!y78ME)|^OhKSu}?Fri! zdUjAPH$KtmMwa+^wnDw8RoTalki5c{K#@oJf^O=YcG`7^Y<)rv77uGbi{7t5;dQx{ zfXz03jQt|z-#Y`a&o@2?%+#&CvQ=Ic;Q(1`w07+YydP^QNlM(~c(M)`5g)RdWGoXp zhWJ$ZB)DxgeQ>SPwx50QyTa-l+*$fGysTQ!xtaZUZ_Fcs;EjA*8)Z@u)J--57$Kqs zeOUF{demRvpGgjv$ent!8&ijV3~VAOI2z(?R!xW_SJk~>Stj>byq1mH>x6Kdc)(BC);c3qThFYlRy?O`l7!S4}NogC%q-H)S8r9zt8A2Ul9BA76)?851M-5zrJH- zev%TK5;m&161arR7SW20R+Q*+ecINuYG#$@$26#>Fp>`K9nX$rwj1&27t_Hk;}9b~$a4HS<3r zIMrqXe7y+w`V>{xPJ0KgJEM}(+--PsQqAzAYG29Nc$n)CbD;ydh_Rh-1p@7#YPto8 zzO+@kv-V|g;_4edw1=>dRW)vb`3DKOx5yk=VD_L>t>iu(yiR`8TzP?Zcxzu^Tm4}Q zM2SX%%Pb9kHA1 z*Mw&3HkpB*OHtca8w-z>i98vJBz?M7A19jUk)>YNLF13Od)n+4NBe;ij{2O%8I*t+Nvb!}sS^vcC&PS@9fN zzWeJ)evo{(fUV~rp7CGbxpnKUDEq}9l?)e>Pz$nv4gz~JP}})%1+^;FNQwaS8Med| z0EIVfr$IIR&}q83FLXJ7P}AYZ-(v8^dJqF0@-u#ZKGRrPko4sKS?T>Yd`PBABh^8) zpqZ@tmp2wFNv0JLW9>qW1|op}wDs;d3BsU-wy$uh=N4CkuD8?;t?g#k`Vh=!(Q%0+ z%pxms<5DN`%3Pg8{}pZ*fv;?QpS4QXC%&(y_@tlR7yS-E^I=7HFhYSNtlFUFZ-+$+ za?-q@4E--8zSNfy{NM!Bq8&*AQ?GqKke|Y%AZ>HhHR4FEn)PMZX+)p2qSRNBRgkKl zVQqB}@SKSY@6yuY&``wKGys$o9PmORkcFxoR z*hXc$E>k!BrnCOXqEHAbtUWBqx}*&xDu+;orQ@TbMn7XheP5C5Fxz(81}3HAFK+Wh zN^!ZGqAY_-wD3ZwDpESu4YA~hXOB0X+ow-^q^PayVx?D|gAN^pYQMlfMS9=+VKm2v z=e+6F{-)HV_Uy?q*$KuhSKI7UP6?rN--$Gb}iZslov z!I6~mA@_y9#nfY9zFG}=wka_KKc)yv!P8mn@+wlV65fr;l(dh&P~&V&0lUSXX?yt$ zh5HTb*Xeu-fK0J+R;~)gJUGL|)h`mdg-_wDZdJtXw%-+kJD>AzWRU*Rk0KkHf6A^}2zwrUYiKQH*zFqp*CNKNf2DysOm z78RzvjD=FuglJtPB0@++q!DMq&l2A7dfE;f~`qq3~{O8#Y#cdpd&1|Zh{ zv^?G~^%A+Q8z%5Nr@)u0Sf?qwRcvbJyr#uFh)#|c>Vxbp9b6^}-%Dcjx z`jMr~wEmQaRISIG-cU|xO_4uu9CgYlQKxs!owD}B4*yu>b_~bH+`98M=Q>+0YPKVB zS9MWRV8woov#IJkc4GkU(PWWSq0*j=7~&v8Rq9uS==N61IIHBhHZq{HVa>xqF;Fo3 z)_9rSxZ$U?(4V(FG-=vPVjfuQhpZUWmoI1K*379n<(?skirWUP5^8{>AvhY0AFp+W z{Memq6uaWn|B(X2wicb(SyJjPsM&j#B1ORSQ4id?ZPPqbeHpKKU4gc30Tei68c^Ty zl?08QEz8Ke_}0#iT_TOnkWQOZ4}*_E?<&l9G^Op$&s*NyWeRV4u*usSH-vx1kHu5LH5Ufk1E$(KTAxee^vf$ce1)MwHj-D40&U{U4_(&UT1yri&JK_&5s!< z&DsD{5LqDzV$LpSV5$TyI3Lpzn=R!GILj?vaWrU|H#W!|pXIq=JUc^u8SM))RVZk) z^!>2Gwt22#DGT)1#HnDuMva!ovJD8Zh3bu&N57-dJvNC8& zmeAc!t)q$!jN<)wHz=3qjXC|1e`ejmdJN>$?6<6zFaR>QYAUY9J@@{A0T*m_k^ z3@T;C88hQBT^J)iu8;no4U7NdtVfC}N5bwXTll|VC?rsDvjUcd7s8qS0lzlzl8f;) z^KyUbQ=NCh7ZfPo`p+PsBUKw48#`6ALYsj5?X@3%YY$B{{k&gh0Y}cCXYT(tD3OmSddpgc}Vw zV;HLGDxALLaEA`m_ci{(_a}bx+0<(p=1EvM?_8Jfdv%kRmr^{Y|dzIH?DE9x!pKqd(E53oUzGc)Mbl zOZkmwJxsI6xoPFG&|O&$t-e@I*}|#QFVo-vhnr@+&vd1terw)Ncp?(Zopm_5CvoLO zR+zl&*ROEE-i`OChd0&|XH^CkdidS5042o-#!t?OUq&DP=PLIXg8 zx4AM1ttpN_Zy{$tyYY*8Cl#9=)YTtg@`bF%k1HLY)C|-g*kG!P8&NY?wJmGP|4m=#zs$ihE0)yy3NyDMN?g{H`KJx7f zx!$-SjgAHEPX5nZl|l9G5}_4l-aeVhLV_YYi51_Yp74G%^E>0G+UReqOA%N*Px&I= zyZJ9kBLCG4{tqR;fEK3DwWdsfUBo(eqT<8PNEV)`z@-KDv?uTX_D|~F&1sXrMfnmi z=yZyOGHq?{%dIGG>%A~As6^PeR#rl4Dt7O+7xn|L!*4qh1`Y=+LojHCuKF4gLOo~h znJIaDZ7&exOAmzQR)If!KR=MFCKNp>G6pxcWd#-oCT`!R`X^sXD*AU5|3&1DJV){o z{Tpk1*FyfxzPn7eB1RX%d_Oj~+m@>x-=* zz*7?#4Q!no>sOt}wRz53z73mX6DAy-hK71&zEf!XLHvSkDE)c zQeSnM1J6riNEkk8wn?s@L)Ktgs0n!F>1nWP{`hN)*T7gcVxiiBI5&_}c0<}Hx7ml* zmw&J1*J^VVZj?9F-Y?2d^h8VKdFgob^S;oqw(3!FRRzzvy36`|$7hMJGkvdSx1G6z zOO^-r#zfdP4H0JP98GASO_lPyZw*pZb(X^)hWEat!u1 ze@8Q>F2rLSKXq*R(f61rbp3H(0o*w$W`;Z^bV?b|Obdd~Mx^=a#F_m>+BoxY#IzBe zZ>zJP_1{}O4-T0sXFE z`{w#$ZlD|9zjas_G)MvY> ze?2@{-!_D4qwVJR7cxQpC9vS6wFzA~=Vqc`yu6i(lk003tK6Ec$q1Jw^c zcP?PA)2J*HB)dbc&sC=z$Y`!+5ms- zP{x+L(wI~2Rhp!$lrJiad$0&0a8wnA@rC5~g_$--Z#HFnI>I@(ZpDU>K5GM3>6h)+ z*+G+=)S{lk1KX|3w^ND8Xnllv{XIUCCp(9MMlOD3B(uL|AQjd;BTIHk?aE9qG6GNr z>+?xGi#A)U#)11CUlxi&?l?skf#9mD`M|=&i!h4Iw@nk5!-HNsEs{=@#lErV(lpN*F?3n1-P|2oqK~kddsV)+}E8i)y%kGiX)byop z7eR9Kp9ww-XVInJw|wcdhKbN%jNuF*>rTJ^>S;89>(^K{4ef6H(GSjUa4Ai3m*jLu z0W2D$Mod&o3vCv(f*G0`4{a45(*vI@HNpo&H6MJH;Z<$FG(0bNmCiJDa9VJ<-BWYp zp0;{1Q1mnc9Lk6vkTagTlL(-RHzPwRRCQen<`!BH_Zg)%ir6+kL>>u7;m(*k^siFm zcPMgC5Fi{vQrrx}#?TM{7CILnz3&AJNm>dPXx`VnEJTKbk3@whn&Im;=+ViR%1)n(m7h*)trWPq?Y2ARcRfh%1&dnWeMe@&eTzwEgo zZL;|#e0OWBYMk(6?ZA+^yznUHPI8ES2sw_W+`yVl3O8H=ix!*<)=X-={e%F987$^o z9+Mq2t{XJ;yt7^-RpkTNPD-w(rgGPnWx+y8~AY z#_iP4uf!@LJ0Y6mZb0028>{rook&k7E0nHkAZ$IGgKtVt6n;J}us(uMeY9%SqngRV z**JM|9&MdF-&lJzG}9WAj`4?gs0|GY>4^(Y9RRZj)Q!$C^ zCekC7AVKw&(VIlE>nXHEwdq2-f$rz6tQO+2eJ)U=qxQU)3XK?_lO|g?o&pIeAQn%y zc{U^6^)hMs@+#OXaNAp3X*}rU==#aD&4bK<_45=*og+eW=G)6ev@H~0L^s{WJ#OHm zC2DE4MVQ=Gm-=D-`DJ9~SWT3l&D`P~eo*{4dLo`{xq15SAJOmTtQ(!Cu@rj+2V*5J zM%ivJcT;5oYc<>~0GPp2{}$1cGmmX)NfDh6_d8l&lHN``<_GFcf4IuLIc77MnVm1q zCyaMvQVK$oPOc&Vn78MvvQx~tyUvS^NZ}uA9dy6r4SfKo;rSegfhz^_`Nbl`*wVOs zulC-fM<0{9LO9iJg;0)9&6IqwEFB9PAxt%n;!*wv9PY&;XKXu#ffXbN5+!T?wat6S zKMo0h?d1DgbAd%b;-7)@mCiqm`UXAE)vaS)Z$kgs8swj^5dKk0)fH1T!HZ7SBVqK( z#i21=B?ET`$n#qB_kK*+IVjd|QWvq({eh*t`%UJn!~1{K`kx;EvJS}z;wl@MMh+h! zcht*P?#KpDy$E>qq7Q+=4{|0uj%zY_j}4BMS~9&;`wE8N2@GcDmK^{uiqZN%7)CFf ziXC_G656h(-ae5O-$zdDzodfJhoejyxl(D+z8f|ND)QSR*-=1{GvayG+8?ZrKAJji z12AUf@|H@R)stdjwufOW)7!Q*+r@yko+LZ3X>%c zh+W>rk=2y|SqZ=j%-{Ji_kdx8)pFwIi~AQ(X;Tx{^kSk(WmxdKW3)zsk!XJ4qyqcGd9bn5RMkO-h?gs)uM7z32mN{Q-eO6W&Y6oNWF z{=;_BlMx^-h$Js{R-AJ(t@9%gXkb98-@40`DzGt&WthW~NomrCK;JD(p?L;Gz&c4L zZVqDOs#8P-(_P{qQJ`gX1wh~EZyF@n8pq42x@a)ctO_2Cge#jr3OnN2Yf8!;fOoQ= zd^p^d>g;_EYmD7-ly>Aj?TyVDP%Kz7@-c2*Iuo4~N4VAHRjd=*u&ME6LVhU?9a;N+ zMa*fXfOZi`(Zj~yJnuBGrqa(YVNKtZ^c_Wu*!2(8q4Kzt3C@6rIhgXoVx5m`jSsgN z5Rl5ouh61an}D^v1oi#b!~GMd_92M2d7!sjjQ2nT{6xQlJ#Rh8y2C&&Zd-Ks(q-!B zt>-VtrcPP7OsWtzc|FJxDz5{4t;2W>ELJ9_A18}gOe*hAMl-4zU6$^!RM(fGVk7!Kp z?V|B=2zh92CtOQ5?-r6Jw1%Su>n>x8q|O3eNYqi~cdst3Ek4LT|KH0FP7+6C@6TI# z9&scNz@DGC#?es2i5a^5Z+Gd}b_IelzGe zJ+0n5U@W6QUdx)dy^|wWD zhuQZB)+~XE^{AP)GMl+~wyEjK-oejtjl5Frdltg`<~ z(Nf=p9dq#KeV3>6Ir20EM|8$oDTbeecgy+uv$q|s!>#s|Tv|(thf?Uefb`M!U-^d1 zk&BwimbSPREL=CDa6BqdQs0Dc*VD;zBp|na?kf2#c!RiDB`(OgA6LFM*M4Z}b=}$` zol^OEWE~sGHG2EIttpnDnI7Kan!8GhF5g+}xO14X@8Ae`58>F@Xj>AQ$Lc%Nh+bCc z#ep(&KjquPD=|+cwVo8caGrqItcBPlgqggc41sJ=jK1s${CNwN9GjqVJx$jqIW=DC zJEmEQ8I8FP2>5{YqunzeluI4ZF=CDzG2{+3fRm87=KRSEU=p z2}cK?i%5KM+|lqob*iRQ*xA~m7+R_6FDLqIZ((nN9mMm2lG)_h3*Qq6eFk(f>$AKd zj!QiqaC2A`z~aV?%SPE9)0ys*awcQlQx=Fc5R{dNJ_rD=3}4K_%6s@$6X^);V;(G2 zs=AlGJ}$p$_9Qv0f(N3jm-;$*=G`<610HAbt?n)UvoU(c6!J#kuLlo;RLE9+b zvMgTLu$U1D34AoO?px$4YmsXHv23@ecvgOGOsL%)rMSoW`&Q#0c{~1{2amI#ktu1Q zW%QKZ??iyS9}=Py>`1y4v8c@BeZv$ReSnl|c~|d~fy^_5h97L13LgVZV5in+`<P+F@9gG8mi;jv;BpsD{nG1l@Z{U2`S_ zeFxwKfuRYT%4YAB^1moVDJBKl_*#_jHEWP4@z<|jF+4nadc%{+blJO3(uPd=$hhaX z6@LjhEOa-o3B;mrqS)eGhwRLfbzV1BK{D29XUlPid`!+Mgn^e|<{mn1Jyo=|7VK$i zkVvYf5t+o>nB~M5zq6I*Q8Cc?>Qx_6@3>B^t#y#}Lh6uaQ03O*_dZi9xySa&XXg*C zWrf6-V5))$`Cry5H6}V6bLpb!Dw5W0`gFymawNJ9Sp11=6R#pkVzA&O*+I9)kg&w_ zl;y^*v8(ElfM4QV*j{`sAd@lft((tl-L+_{(F;3pHIjNji>|0s8Cdz#?#qIMekks(!A9le{SNj{Ny@pxO571%+YwutO< zGHFQJKv{fBRFEQiTdyt>pSwR8?3Ycc+8S&8mN`-Tbn84ZH?p`wM|~J@ZE@=~DM;3P zk`vj}ja-z5cA9-nkBVd$jXo12$Xt;d=xRI}YOhAVNS%EsE^f+u!Fw2gu6T}EpT`lc zjw;h63gYec8->VCR6X&E?Tz&K=$EnDH~Ih5mCIl5`z=(4kxQhIr`=F#pMRO-;&xpe zjR5wx_)Eor3M{(ZZbqI;PN z09yrag(sR3R%ckX%v&vFV#v_1d?K+l42k4tVj?=eL(NQg9)4GjZ!Q@O!1PUgSNeK< zC+XCbl|t`wi0zTn_%!2*{@b$TH<(=Lb$nX@{`B?^bg{9brEYClwRc$j-e+kkSWX^p_@My^I^o<{%pp*j#3EMo1pvb#$C1J5v0j}H@hvSvY(r!?w8xocP3BwG(F`t&qau*SlHNs5h z0Mvloyh6cSk6L3Yw_{`8Qk5(2kDdAr_+Dqb?}5u!{J_o-WWbfs0e_bfBniO-`0RdIxG4_sTO- zBE79u_d!Eb>2}EvIju(@TtpXJl0BRnk2p$~^l%{+PUp}a^LuUREx*Taw(jl`&yv?~ z%+_{ub^NpADduNOaCE14ZF{=zJ`m@%9xf}2Pe^*bTMb^6&8p(@PI>!Xfo<(Vji*V2 zN_U`Ef=kb7x?#%YSCLtM6Xo6#--MLqup~3OdA!|BGRrs!gZi>+XIGpeP8hC;;Wtgu zms~h_O<=L@(W0FhwIGVPQ}JAXY#*SLH(zXB^HD(K1Q(+CAhN)Q@L|F`*`S)YBvX1@v zjadEDqL87i;RhC$imndN8h7*sI0`suX#K#D}53nW2S*DpEZ3N7wbbf`40u93ULDv3p3_XnzW zuV4|Qedg1Z*go4~XJ71aIY2Vo3jV}Upy{Uxw}tYNg&nX?wRa$y=7X-b-qgof71MW< z7}x1R7v3+KUclK|pBzCSQ98%1EQtb2{fRKMcsFCNWUq7NK0j|vI74|&!n-bq(tC%d z;47E-1^KGRp&t{jH}+9vsx$?e$ucZ&_4(^cWp@2|l|J1JT38BtPmETS`1XGvHq;s# z8ea{Rl5lM~r#rwWhX-CA!0NjIcIz|c)S)w_Agy);FSQ!)rC+e_ahLL(!HlR&#HNFU zhjGz@JrB2$BdEU0br4p>v!1sh1Au! zI8?blF4NyEm>-oRDqR<2CBZ~1B*G4`X>)YIZQ2o+8}D$4qenj(WReihcMKA#Ul{oQ zdm(YsYnTH$Ub*aU7$M*;OF4b1i5+&^WT2B~^dGXryVr49F&IcEiJEcZ14ptm8HAy! zPerbb)rA3E$xWdWRRn{@+?P}45rJz$othJyg(>|iJ?-K6am{QdeX8P{$tAmTMMs4G zSM(xy(skFV=^@sg=CqeT&G_xC8=9NJtgZ@7*5b8q(uSZnq{uSEy5Y3fU8keO=eei- zeq*1(qJPh94K3S=#^1;uJzaUSK*vkdKl8Of6N8{VsC_(WjA#>_;$SLl;O^9NjnSJr z_1Q@`Shk`uDA2!mkcf0bjHD`;WTMQ+)Mj0F4^Y=hK1@ba(&PGF*a~~qg=-})k>pkZ zrzft>tM^9Ee@hZK_U3ao1~KaO?=v4>tB6vo)391jdikR4)4b;x%>hy zSRR?_b9e=J26y4`#e2gA+-+*a=^|em?^`869a^q zVy9Y(sO`uKv>?tp{!%sFp3atF!Kfy=b9X1xVzc(*oXS2sm&35)f(R;n!wpo>Y7^APe) zW!GHVU)SN!K~{Au-4QD5u3jl(w0y5D<XdR!}zoB=g6P8 zZU)y5ZuUq%-z`Vz;06=r~+cIvN7@LZx7T%dqM>`RwBg%cAUy|R0hmp&%LW-!h> zTQeR5%jfJS)3QHrIrU9LS1p+>M)}2a_8S86@3Xt={nR7obspv9M~M%$ARiymbfaFg zL#SKrQqYMAfSUJ+pd0S-NpV>V1&Ko1N_MJ(H&Eo{ZC>r3UZwwISebjhIsK8S`Eq)d zPs;1s9Uk!!K*4d=9w2!|WZ%uyBHpbCG=VXcI)U`=uavVZdjO^$ge00{)wy(?GfN-E zYLxb?3OT_A<6J0@=1fumJMn0Q#sD%SwpVrepkzxUXY_^6f-6;W)Ba!=`te4MnYm}y z=D81(nwc!1hvS8lmJ05muH`;v`*f}lYQ0%rinAjOIV3Qo424C6xZvCxfKhy1Ax*jY zMO~``vE?EBB7M<2j*?QWz2tTZXyw>(o#xK!D>;f4#G)a0~9oP(<{YblY> zA3{*IkaKr&b&z2JZ9qFaL)L=g{{dPRBzqTNIu6T(zm#L(T>@x0#Ku?t<|T~6wLE= zBsgi++d3LQlR48U**ax1U7_k-x!w$3xa@JoX?}gO5= zy(YyPvG1A-KF+(Dif@!1KS2~PD=*Q2Bu1f%Y(>6-dV!3iddkwCYv?{jv=Pv|45Gfd(G^R(=UpxkCEP%Q9lF@^ z?W_o4OD*SmVy&~CHO2(F<`6A3VD!wHZeH?((OW*cYIXZ)fovZOQPGmIbN|q=VW9Wl z7NK@BL9Bl}&Cao|LPln#*h$wKAvi&I-cQsO4}0oZykvmRdh()eja*l&3wpY+yMe6v zecLl4b=9S4_`Ehg!%-_AoE+ygqntL%EXitHRSPeOwxXP0NyqJ0thO_3dx<-?4Pe&M zVz8MsG^JQ+L|fg@TW&@wkc7Tw^37>HvH$I&1Dc~m>nH0G?*T435#HTD1Hd@5v)7HiGbpX#wH9NzO;`!SLXc`&c zW_H)t=0Z?rEVSFsF)V)SiRM{JOeosuB;87$1)j{!9}mw?zPSJ{_Wt&AmdHkn%j#tA z%jgnvd9IOMh4JvGm+^^!W_~^+BZ1R7&6$$;#3Uc-Y$Pf>ayX|T5;6r+>M9m;e`i`* zLW}E9mAA%6m07MYcscikw z{ejvm%UOxZb^AU?JCbF-Dd%2m8h-?k8mhLr)q)~rM>ErI)v3Pg%^QIve19D%HRj6~ zN3HovWj8_Oew3Z#nt)n_Cl=%b;A#u`ijCV#KFipsl<_qvA5O3B!qOETJ4wBjWb`OI zsHv?z;M~$koX0QlaywAT?S`AhKbvL?IHx-vl|#$yj5HU(Vw+cnA#S~N1>!s;u0lfE zd|`f)Rq10ao9JSjAN$FX2seM~K4<`%h)gQtHsqBwn1f^H%KeOCP79ee;wl7@7`Ie& z%jpu^zU^F)xLd5c{i}XAdo_hC$h}B~$RD|I9B~c2wFqKR8|dm8Zd|bK6m4AI-1VD| zD5zd@G4emy9yc-V>hsMpPc1KL!p`K9XPG%seDG}aVsgww(ncmgArV|vY+T=`g+wki zrp*wUxw;5tAFfIHJ514~r?^B`nDdYyBW{~5mkfae$+E0VbqzCSx{<@3z-Y{+y9(x_ zz|tTFp0s$XnJ(X^Urmo z!MbQke($I2h&2GhJ-TG!^I+ghmsUqgHjKpGkybCvnFNHqWuur{<=cYNpZ11~E|sfB z3v%D(q$Fu{mMbU40=eIgIf6Aro;ScHHJcAC=e{+sb}l{2!HpLIxEc$Qf%WZU?Je@i zHxfS9Q>thJM5#9Yeu>Ft&K<=E7qAvb(bb-wTDP$UV(qfKtG~V*GTJ28Gi7;};J7|_ zZIQXO?1hBE)5}q*^AUD~Tq|i-i&ZZz${Q_1n~NkO1e#N(>IF1vqd2 zxVdH8TFWD6k9-+EJ($_aEk0Skpszi>j4?+UXEAACKQb~VXOHhuT?bQ?9rM54@RF4T=}jigU6 z>wCk|_Doay*@d35isz*I-LyIk|xEeu}O_=fMi(i(H`OxG@o3=-vG zPDxpRThz`d$IB}GyahlxbdywNGAnuyzZXg_zooHVz33))G_EUP;)Kf_Q%a4+sD^+l z?aG!n35efYh9EjIBW-m~wf&gJy(0cG>(j)uh|}pEZ%P@L3RcUZk+A}xP-c%Y4wsY| z6sz5>@1QbH=MMD$s-zl%Iq{MW8uTqvZJ+n!dPpYnMZ+EUM;Y{1#{hk+)?hivKN zYqQa`FOiVUFQm1jxaX|S!QMXaVh0(;v%-$p$!4p>Au|T8TQm#Wk*ra^1b9Knq0T4b z+r~v8(Dmr+`j#&%kUgidjbA&f#cSLb?`iZ=T!g+DrCeuocjfh0`$Ofq2scXARx<-p zNg2N5mrGH1QkwU5a!uC)SJI_}g@p3GrlKO(8O>XG%#skk`L`O&v2q~8$0u_UH^FE^ zM{OE6y*@YP`ElSQ(SE?jZtp@{m+FG^b$WE;`4~4E@uxE@_2V5n?Pdyb3ObmzUw^{{ zn?89Cjf742rPSGIrlYcffC?`w<6%9w$!HuYFIROM-!ND32$OwxQy-*LV_9UV@IEjv zk*mMhez)Ft=|XJaJTj5rL{aEe3%pLg(d)^gWD-eAS?7)yRK&w8Da(_jNy7=}ld_WJ zKV+JNi*yzx)MRdMGF&C-E2>-M53gFSp#6FxI@x952E$rVhBn!_r?b^*IX>s0+6pJC zww;ykc<`<#HKjAT`~P&sV8 zrbyBc_?EM0vos?p07Y)AR1t$Za_69FkNw+8-8Dkz(AEfR5@_ zLLF-*Z@e6}F_n3P5XzKV&>M0{)<^-u2<92D>b3P0wiF|A?GO)y$6Gl5EI<85nJnze z-Os}6EgSQB{hJ3`ySAqbF^x{vJ$XPCm4QiV3F3>OlG00{Dqu&}TnTh}-8L}$bIDLH zgG9%)MMaNL=-ZyGzPuZU*b*+#)j7UU*K)y@C_ypon^DZo4Muj%n|}WwBWmurXjg0{ zoK`#n6b}1Z_Q!V@_2}P1;@w!CzgB)0K4{mx%KWzJ!*K+R<#>KhcYHRod%rzDylVG< z&iwx_VR&Tm{kjbMp6hK~3#J^^m_w?%`dIPN*MLTK!i1R^%YLetzHvgeG53{{_}>~& zL7D>x+Kj5MAaS=*7v`5+6F=-5XerM||B4+Q>GneSI6I7qp3w$n@%p(!8ZKFtc2fqc z!psBA%d2`?qquA#J{jqVMRQMMStZ4jwfd&!C7if{wDgTfb?TpTok7!YCPO`K+K~Iz z**nr%i^7AdxA4eKbfl?2k9Ns=;ZS{UVLsvq9|*79s(m@Od8-zT()iA$(|b9J$1(kmy7hjpy}~Q$!=3MS{pT+plFT9Z&ib% zUwMyPEuQWCI_2jZ{jRod9gto)L^o(MSn_I(jg)>g{(U=PhDhImynf=iEIZ-THx8C` zw8#gzG|4GfB3P8CyMy!R{m~gh#8Cq5&5K#<4x_k-U~XkcLVzn{u8&-Jp{Q!dlrQ(O zZ?Kn<^NWD|$In`H1H-3sB4e|NhL9v?d+898c08h3UrF)?2C@avmLCnH)joTUqg3(i5 zQFOWejY@0vP#(=xP|KCJ-qyvLkCR_tk=o{YBreY=YGS9iT;}dcql#M@{4xY3@t_gs z-goeIj@iAif3EyN*&x|T{swjyLP#=*d?6AqKazD1pA4OhxqfhD^fh)$XB5kKgQ(lI zo5NCIx8Tc31MZK1)d`fmQq_uV_X#J;`%fgUvRuaK25I|zZ+ELhDpL-&3oApY`3&qwb5 z$WjG)8CthM$qYS|gO&IR+OGZW_ff{}*KzQHpu&_PL|r=1Z@I~<`9=59%lUQ^__P@9 zNjZPfTdXV0{<;Rukc!E40e-b6*K;3jN1dBY1>>r`h~a4{s#LbpO1IC?`i6@kV4}O8 z(Z)J5fO^ZOFAYXVluk-aFIo^M+n3P~qtO8-)wt*Lk;Dj8xF>A`!{q~Pztn_@03caHI>8_I*GS*PYk z1@5e01;vebqQkU%!^rU7?Qi=cKz^Cuip)UCy||ff@Eou(AL(Tj|HGOi6)pjK#WKj~ zh-aal(x*c_K{3+yH9bXV1fhHNfY3tup}>oF`M|QB^CR^-~AqbZOwEMm=N^Y@ll-=2-HBjIUvy%_)@7W5e zTa|_O*(LhHG9DGHH8<2OS>4hJu{MLx^9}l;E3lKj*%M}ITDC}~{Eg)RaKk_+HFROJ zaf{I=q;65J&|FbP*z^i!OpkhoV8d2Y$OVTI_Q{(QN5i1eJIB0p0qPC90(sdu?Io$H zP6fCP*RKeOhg{>9Y|?`e*>^ds%+xdfh5V1bS&t_9mmMSvJkvBCv`eD8MkC+{>PScK zAfnEjiB6Y;t=7lz9?jY87Wyv7R5EAy6uko?t%{?>SyxBRzCUT|4qV}2WC}#+R0A`K z(H%Ba1S~bEf=Fqs^uOsD+lAj-qckw3H99qY9PQ*N$>b3EUSwj{Tyy!y(18UsLJ+U0 zLkseV(9@=V4Tz03*niWC*26t0$U>L!h*--Dd%|bNKs8eq6CjD3QJamdea&VLl*ry9 zcY!fxekT&59WJl&er;_tycP;shh>XGLke3eWcqbiw|0wSY^5sFRHBsSc$Mz=klOhM zPusaUY#MIaD|$5(jHou~KKJs;w(QF3!44s2UvGi}TV9BqsQ9^T8oU9B9~&E*Zt6}g zD1UyfhMBLcF-_z!rdON5hD)g)^${zrp~Fu7rIZ&lOP*QOeOg5G&&8|Ii;cl%!KL+} zOi`3O|5~VNtBW@21JPAjLBT0AXk!(<%03g6qg6YvXEWXHE8tO1u>>SJWe{X>rbVH} zrn)p&G02hdLdo|kQGj&c1GZzUHkLN#S=RU#Zxs4^@-a4Ow}s0MACuxT;2-xr26%O!W1Sjv;mRo-BY}H zw67l{Hm%Wqm)4!;@(G!JycM#!aV<7%`0mzg-Pr4bBfikH)9+Figa&6E$*o#4_uX?E z>XBUquXgici=}P=t^D=7C#+k96$EW<91Kqhg;&Ya0h3qp;EbeaMGy6CXe4*>U7}FP zXAG)br|3#K;Vs^^qDT$)6yBfA)SQnL)27S7yWG1MU$x9 zw-i~g5Ruqu^Hg*`cDnlT!UxFJ{N=K}Fp3kY3N+#x=4ZP8X;w(Sts2jch>$vV92la8 zEP6Grdo&2wTURRTDLJ7xT|Uozd$6z-RZ1osF5@H>Z^9m({5*Fz;7xhcgdK1(m0SyQ z6?A{Qdxl+=WnTEA2i!Mr%tdYBx{VA~wU~j~xX-2;(JK3fd03*;O>EHKKV~Zzu-?Q( z&QAjuroeHMu#<$%4+YIYI7lQ<&j@w(A} zSoBdQoS=b_zcjb!s^mZ2N#EXtGf1!v2Mj!DTR>u>Db!292;aZwIlhLL`sww<|xe0 zI%a%5$y>c;2evJVYkwI((_T;9;_E@L>7%0V6)eBpvc^@;+j2I=)L~7`!nwpcav=Ai zZf9cyFbo*yBQTRT+Ok>^ZXJK2$Zld>dr#Ok*c+`QT5tJu6#b!0p_i<#V8eGOKiKxg zdf?1mk;GF~N!(_39f9&ctl#Bex>yM27?X8HS6KZFO#I24oNES^7!S#G+SUNWKvME$ z@z_xXw(U`(#}GIr9a z_~Y-p>F!raCoV@7?~4J3YeIQMjZ{dgure`HKf4tg>zW@HD4GK6sTzWV?Zcyr7I}+y zi^6VBU=$}#We0eO>z|hSZC7ltclhE&c(|U1n5VNv+L|>ozvq1OhS5l<-o>uV_!EAM zg*APc`b=;X=HrOu!_BrfXGXkcTxI*D7-bCy$c{n@M%26P9r*h(;N(Xh zPKlSr>UttDOVN%51vlsG^9X}3m_Yn>*%H*s z`tb|QR#`yUogB-DQkS1aXc}9Y*hDngtS>7-`#_fNl(Z}z5aXrPan?cHkLOG6Yv5W26W)-tSV)t!f-?kxVCs7*ES!luJz~8 zKzG$(nQNYO-ibUvc6InUe%aCi4X|rXFjl0tcZZ}vKaW?cZcXsFzqP7!V=CfVwm4fL zX!(tz(e(|C^W3a@G)>rl>P}mzOQ_ORW>7WGnQc^^GUxxy!K83OPYssCxZc{=B=%rQ zk%Fzb>#xT8tvAGP%9CLu2M)^2xaF@(c4gWCXWTgyzqcvQzNO+BHc#rBO{vnsj54WA z+bY$h^9Rk%e>VsJhMoRcM3$G0Jb%0YY?{id4E^FzhYW|FAN#|25*xvEpo{cr4P4ll zxjBjVN$f?M6C}Ge!G*{rfy`waI3wxxIF47aY`E%|eK>q;z3mtK_(}OCD@gy>!$Hq_ z-N+oAk(oowG`Od??G|AcRe7p!XgCHTx2ylcJFIRjocs1RosS+AsKc8xnQLY`ksG~d zV+HuV|M@#^UBJUy6?dm?Q)Pxe2ifoKP0%*r5p`O`LVC%;X}a1fQyI{jMA!VvCum-e zN^$UTRhZ!}bq(86eq{}NrPPTD?|xPV^%$;tRsz(}Hj%Yx-aD6SxvvF1Jdq>g&>{k881LqJu<5qF|6ySdh%>!@0# zB_Ymu{CO8QU>Ud*>lfE?!bB|@;{ggb%6`%{x}SVrAcYR+Q?79^bbq6!`FHd3*E}9y zCzX(jZ|@lx4rPu+vMJtG|2=_k<>r35k-^WA8!^en-IpHUs9;(vDybz}dfj{V{@%^t z>Y|^*Vl3xRb1!BFbf(t_u125Sf8bbJ&Adi}CX8SGTw#&;*EarB{NKuWXi6V^SLc49 zlX>s^xcZ|XFlxZtJG1h0>bO6?GgNSG%{Y>gY3KQ3{94(RE;szAj0cCI8}yY-w1}?= zXlnP?{$>w4SFpB=>5^Muv@QV>xZAj18do=pw0Xx~X*JT!Wb2faf1C#Px;+y}zS_0y0?QEy^3Fbxo=iCQ;8lHMtM<)MiB>z;-mNotb*I01O6C~(pKjjW& zT8zE!SWY~tzhkrl0AQ6nUf2IVFME*_+!uQ!Kg)gc@NN2712}UuKT4+TRZ5HGJ8BE^ z=o8H>IdeAV3FqHSG8)&d&#-qK5AgrcKA$o?#(?}(YUYFLe^|X=uBLM7pL*~wGrs?0 G@_zth5e`xS literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/modules/2.jpg b/odoo_website_helpdesk_dashboard/static/description/assets/modules/2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5d694c069f84c73a6313b670bc501c1caee72322 GIT binary patch literal 89024 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 hZFSOpcyl zR(Mp!qt;eVr0Dn@id9Un+JdFwTQfe} z)-eouqX8PC({;~L~#x*-!3u_w+jjf{Q`#AhBPLKo;{ zP`AQmMJs5{eUdu9OFjA7@8zZ*DmHYly%N^u8hOYQKZw>~;$L83yya4^;5P=x4Q?l-IbbFUCZpiF$%}l@-lO`O( zW>a6CQ=F!fv2KUL#$CYsbOo6K{(0vuzc4$-kYpbkU}0vVsU>iI3PnHxv={oO2vihN zcV4;_6O!@SeD_H=;`CS~-jSu|*qh~*^8wC2;G0Xq0o_4=HZK0&5>0DnO@83a*X6b!r?`;8b$w&_2OMKY#}q%KngFn~rd$+d=>o#OiqJ+N@=cf03e6g9a#I(B1Hm$cCr>IST$$8QU z-b|jUt^z7HlIqtJaAI%&*`)a=kH$YY-}qbJ<~_B``N75C`V!Kpq|?J3Gr*T^$;wkx zV^uL&mh_AX>8Jf%P3_I4&{b=f4zxm#IA?uffrcNIld6EB8@HxG#CA2Te8oH^dd~pE zjZvPdI+Da8=eazvqHx|9iwC9v$Jw^2T`~;c2;J62z+5K9KP?j7K$!^PmwmL+(eDyD z7!*y8qy|1(Meq2Kj_BKg7E#+ol-wM)Cuf7O14FZe)*|KBR1IThghWBRTd50WRSHXn zD}hbs^6AEn@e}(~A6I;(jyWJf9aoA$^B!~Du?%ybTNI)j=@GTLWQbl*+IGGl_Q2$% zkBJ%-H^j2<9_naUI9GVyBGk-=@|t+Pnsg~3mr+#?Srx0KYo>RVwvK&9%F3duTBP8*V*5SxJYs$l9U2YaEx$s|y!FxJt5xPG zo6o5AR#H||EDW4JZSvEs8*tUp5_fqlYB81!-(V)lI?_Y zA_sQf#OxqQ0e3obb-ziJiT&94A^YrZ!m69P-@|rfMsLL8VxFLng?9Pm3skoYIU3gc z@EHm_B4KS^Q#g9HT9l!4MRUO+Pnggt>e4GX8RN`QJTBR<6mBD@kmtlH0+J$GPBOI% z3OKd;Vl@<>{mVY0vzD$8iUl67lBdBlYRx{p7Mso4mbN2Xlk|Mu>Q*PxOX<&>m6rv7 z-AK=(h)$&{yUFZUjZ-wOhQFU^9CrSp~b9g7lsgjkhEgnG|KIEcg1Yu?KatSxmxJh(c3;8dPBC`lMi6OCl3TAu73}{=5mWhv7`*x5C&xO+A3y52=bA=nH?Tm;$bSf zY>&}k$xMazU?$oH1`WSibeNQMn;dL{h7~Y!By@?c94U@(9LoxGqU?xkHYsk;0qbI} zVk~Prr#{Xfj)Uu(a#6gTb#uoAJYmCi)hsIY-1GUh`|+&}#xg81cHiKYirqv*&X?bA zum!G&jb=YZCgwy(b-l?+QA>MMS#)8<_?5C867~MR94Ko6M##F(P{`%0NQf(+x4Y~w z?(XNZy9Ey4{QX~N`u|-Y2fm6;m?wf!ioxIF$oo7vhHonOJikIviVC-UwgVzEqii4M z>eMG0P=eAiloyR?*!9l|V>v4K0QKd&)T>EOZSj@i8~#_hD*E}QL^CT)8;QfH@Kxyl z`^^71;vV2(OfdiN|7iF}>E=Qr$G2PH;qSG{r&Q#S<;S^VNR45BWtyPjOIsDCQH}M4 zq*LYT>-VwuERo8;1A{0(y=!%9q$`oKL_R>Z`6227PLRIjvcA(VrnJ)ECx2Df6q;6L-C+7`DJqebo^_ zQ?C;Ic%CRvbM7qww=mS>qU0l_sh-NE>9#sB7sCuJMPLw-y^}Ia!-|3lHYX=5svXUN as}>$UpoHj&YrR~h5vt?=XU>)Xn)zR>)^mvf literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/modules/3.jpg b/odoo_website_helpdesk_dashboard/static/description/assets/modules/3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9407e5e8377a8463cfcf4b531084df9a0bf03348 GIT binary patch literal 87411 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%0DY3?D843Fs*yL_g?o|rX;u>hN4J)OlzBAAEAr~f8 zVIG-RXJY_$o%0Hf9Gxj#J%M75%gj!U;rFy$^?~-N$82|(8M#8gs{CBUquGmE&|qXK9?nVK=j~e&!Zz6ms7l2P z<$1+_yQ;u-UNtBff6w8vS`GcjjdrRzGsy#nGzOJooF?yPElVjUz0o1HTN4UuGBsjI zW~S_sYvOEG8pfae077xixGS;k%2Mwqmw782THbp{Ep-D8*UZ*LS?y&|oweVKZ_OP< z8yW8kWM#R|j_jv7_QGjUkvD`=t0)e*aZH?_m}l~2ahm#Ya`5S1mZv`fbJsArOJ+ss z-9A~YPvuM2t5*+lWhEjFF&)g`lV@?{8kuctYf#|TpPqmI5BAp(6$}E;B2VKa{Y5&5&X@X{N$VZiwz;c2Dlmr?N1hjmvr`Q4 z$KHoq{*-9jDHeGvkkzZYc#P#WZ$?RGHO(HuGY{>G=15^^h#J_kvl$`6sz2O6jfwT$|QCrdB5h(^-DzPUxL9WxIkYc4OX79p@Lji3zP@aCxbC zlUCMU;=p7@OwiQaD#fIjahmf;^%}oYc`lnl!<68Z(5OyF;#zuHI7b6Q{ITDvpcN2V z(<~cFGmOvnYlX4C5y>=R|c< zJ8KrB!s+)F5fcb#Q&lA*RRP2>{Y?%OA~_&uJ(yWD&{ms-qil{`pInz!E7?eF7>vVh z@jt(;mM?W9+cfAaTaiJLVI$G^`iY{nbA(FU9ZO;CW{fo5cNcWqd=!;BrqM?ZFZvVs9vr;&^x@) zJA+|7kpHOgux7=c6G8;iX&Zz*E!VMnG%A$t!)#Ught``zorhNNKbC`8|rdpYXo#1jiS}7f;-a8;)%y_{xC1!xcLZbI5 zex}1^jd44wwyYp8^}0_%m1o>8Z)RH2rJ%pZan}6p3@9D0Ln~4fH}br9Q{(>YB_45kn@B~S?@3)xTu z!f2HpWY@{xYVHUhAYMwvo#!M#Sz~3Wt{3^w;#_A&lTk6Bk9Adx&9xvw$a*K#aJU

#eM^ytx~sAb%9>ff?k4EdsWr)tj4I; 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 Dha&j_ literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/modules/4.jpg b/odoo_website_helpdesk_dashboard/static/description/assets/modules/4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3d3da7f1689d7b68c6a3a527e6dae837703c9eca GIT binary patch literal 104280 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

Q(|G+2VLeEr z$r3!is+6h=ncS6K@dXk4f-KLeYc3zATb&n%<0CR1F?Ty3+=g_Lb@bj{c^yJ{-eFs- zh`q7wVc1`Y#R#L5B6$9UMbSw%qeJua2i*O6f%63QhaM=}?TMYc0Bx}M?|&W>xQCx+ z)Hl4Vmrz4{D~P%ybP^Bvo9K1N}_u-r?6fq?e#OAl* zZW`#Sfo?WHZFD*Oy+IZ$;i$EV1I^h08i8ewIq>J?^s$DtU&GkKOT*OCN;7gSQ}P}^ zCYNUVTe3k9*hC#+*O$+jdr}IMjt$0>H-9Qolbm_SF2dI0_moAo%YNGE90Ku~c&FblnvZ}Q5--|?7L z2#?sp>^O)c`c^NWWb|ka_bp4I9b=t?XV{bi=rWwsQ7=r;k-+Vn@LlpN?GM=49=lJ{ zd{;LmC-t^X5rKoVZpj`2dfkmct7Y}-XEOl|*=~^S73UuHUdNbhn0VvE9QRm)bs$IJ z`BkJudOcpZ>1F&eUfV)=cH|7D1TetuzQ$@}jxr*sOj$d~i=?LlMd)ri~a z#r6#40)x0}+*Q-<%o^qYKbOBb5!>Q?lMi4ykxyI%nNQ${K|D^q9r;HPOc*ILyA`%H zHW(Oh4&GM{)C3Vr_}$6srI!p$3SKT;;vbVvYzAdZyx?VH%Lpv2ri^c9D=AMjCTin8 z*oiW|lt(TaG$>C8_KKRPJe8mAPIjfi(0=nl;D=%3jhgN@AmS@|=6%n4ZVTdCS!XCd zNhSa@I+;_XiTwOhhZ;P1Xb23nb)JhFXm-McWc#ODKS8g+H2ghNnhO_3EquYx^mD8T9LKtint!Ii|%Qb2TZIdBe}y#LH{|~J+$^?m~EjkU_O@@vd%}fMtRf7e#iMD2w`dzNJiYvDr zkHkRj!V`VxBLBcG2JU_rdNJZa8fbFYv{e7RV=}rLke941ibxR((jP@0*;vl4RdYNS z7i5`yqiz)sM(l9DXaj=bM@vHfH&s3IRi=%G3w_a7^=GfXV<3eLh=+hf7%Vmh_}MaOxJS%_-0{KKPu{g1Oxf74|DzzC>JcjTVW9$ZZK zD75LBF-=wrF5fJ7wj&itsyyUh^bxFNK3uC{X4cLxD}1z>yVX_S(oUZ>W!ha@CwOa@ zcu^Q*EEr3~4MBM(s5YmowIv!5ITN$35+qLy}l zHjsy-d8mQ!TV=T)l-{Qe2CW zDT+OCy~XL}O`XyOh1^TZY=PvgFU3N^<2e0?h9xyD)6Wwsn7RGdB9XH=eejEcPnEy= zxWeBimsAmS>ZmY0VzGVnmgv?<&1O#TC?385J>mq0IGJiqgASQ(=pFF<3+b7?6M(Jo zH&3?oxnY!o-tV)1FXDgt`s+tGqI7}=?&GrOA_AsbWJQ zptg!Lv9>nfUB7d1X{L-eyYn;UPl&9pPPWwoZ``cZ!RVLldb%mhfZ}ftnJNZ~3e#bU zvQ2qx^#j(?hqYeNCKJpRy?qshJS8TiCs~|KvJ9%pq3L;3gdyy26@RA1PAl z*L2`MEJ9Q@xipxNn4vrOnJPuP6qNS>5c=Wt=|ck2(U8fL@?yJIC6&Sk3zb&LcZxe*zSmntkHxgSqlVjoxR_Jk zQ@8o|_a2kqA3fjJIbLgL;f|}LQ4GG`D}d?}(Al6fhx|0`@7V_49My#bpIP_VymV(e z(4uP+XcYF~5^WM^9V^cDY6*POJl+KAjl0~7G9Gcr(3vBg%wIqy%uf%p*KhjATZvoqRVE- zGbznus>VL+KOf>8A*yPJ^%AtFN~fCVIQ7n_+}~_=li?#4x0R<@_N8ky@jpVr&C5p^ zp8o@9Y^aS*NW82F2&>!ZW0^)m$+l?_TTb5Hr&Zx+yn;-rwBa z^U(NmH^opeDFe?M&W;>mOG5YHBtEj6%;6~U74nEI?US5R#%)d(#RITk!x1g(D2L(z zXdMF14rmdH?=@i`4O27U(0$UaL8YbCE*HtoLIz(NB>d6a>+zHsJ0DSA?D2FxeOUPg zB?UiRYheLwxMVNLs)nerq!DXYU?Hi+;dfE=pT)**j=IriScTg#yrK2CC*fc4*X} z6@Auq8gtW8G9Qq+f0W54u@Z^Rp_Fu@_O;bwh z8uSk4?x%mF4|Jo{^$QDIM$@_jGZh#(B?pY0(;KhKmXM0ba|ukO8GKoQw~$Z`2_b4Y#ZX=%{kr zCM8t-P$)W5DyyNFEUO`Z|6H78P?i3kkr6Rq80FOD5{V!zsS z&As-uz;tO;$yC+8*_mG_jF8x0u+H5wY`~;XV7D)EV@bqq-?y_NK30w^Wq)VLIc`Yd zLQ!F`ypuYN@Yw;NsHRYohA!?UmDaYjh^SzEwSCaDwdSb{b=l^S3KY+;9^E3*T*7MI zKfG`VV0lGtS|N1QeYo$N|IgJ%hl)q=hafX)C(Zq~jvIjmPnWBB^2{h^;#@EA0Hu21NygzkS$i&#a2K*diB+(6l27X9sy*sZpT7u1WA3*2 zHfS5zDuH0ttuJ%>SQYcUzE16b`YesnK!d&c?4%<4}hB(e)NPEti-xFrzYU(Yo# za8oNnh$?`h{8#G~g}lktw5hdu?p~r|M8d7W6&)8j)|N^-N9|!WgIbl0HWXbW@48u` z%!f^V>%nozhZDbL^fbxje+e8{cly=4f2*p!AV=r7i>p-q@}Al?HkIm0*lkGqcPs4> z6`R=Y9k1!yvPD#F*jaij9#(3(gWjQoR?DABh))%B6(3??-E%=LDt*+d|1XSTaER!~ zwUCbKjPS*5`DFW1X#gjeYrA|p+L=SwUd*L5heQdi6eU+Hle<2oXGZ^7Dfe!w1(tKM3e9&DltaR7t8|SLgdR=)5tOv7R37D9eusCBrfhXv- z39xqu#HJT(8j%m^vZsf4dE^3S`7$foOyVbH!Fap_b+v+yFGcF6RLU6Fsg?%inee1i zp71v&6}k`+RaP;}MY-GuLnqxTtx$Sy+Yk`Z7Y^gGiC8!4yHv*=CKN$H`qPTjM5^ zCkNI-R&qbpsy&rEr`N|$uFdp&rc9PN-s@S3Gbu;oR3`P? zKgZa#o1VSil*nauvEz^tOID2y)ke0IAvN@r3se*%gndkCM5iT8^Eo+yV=V;btORN( zbaP!SLbk;;X(PCb1GhvO6Y%6?*BbM6c5Xf)95MmkF7pbkL*8R>Gf4#0h%;$i&m^LX zm3>xH>!Q#Kx#4myNFWkL(q*(}y}~88`UrcWQSVUGgqgnrpWsfQYn33)e~H>8p*eCg zVL9t?8?D!KgRd~LL2HH(#ui?>px`;8o3$IVT`=op)O7mr-axhmiwHwkwFmT;T0wSE zX{k;%W2R0w=3`l$_*rkQk?-1p0+o(zbu#rZ`IL$qZYuQpSw0@MoX$R<`YT++9nk^1 zqc<>5=`tQ;5wKQq5Zt1e^L}lKS`#{e^szTep1bref6pB;3&SRP9tbbX*x-IuFgINU zsA-tb;>9?MOAm>2{wVX+Mh8QfmX%VjmD$a@{+%a##jWxjKiq|WbE&boln*!vwoFUR zwk#|4+FdaZ9XULAott6h@0=xK7O|P$!t5Inr=GK0TubkQii`L!I`kX24f$qF4 zio+j`C&Ho^`UMK@b=y~rJmQiGQ3p(Ek} zO{8j5hwr_YlN_cHIx~us&V@Neb%@y}q7Bd&g2!xegU??Vp{6k06QWZ~I+ZknwMBY$Dsh=jGDVb=vcG;O)W@0oZ@^m4)( z9vrvTYtT30Co>dw;q@25*{jPGk;;XhUWk`4k*y`Xp~YUgKxq2>n}I;Vw4w4-UHT17 z!{O(0)%-qIvBPBHWnoB+4@_9-1sbkEZq&OCeFV#NWfd5;Fz)v(%7uG0-C;Rr;}qZD zSZgiNz0gMABoP%LN4Ak~`>)D2L46oS_srFU`ZNmhVabHf_{U+K(iT3t4E@itH+qB5 zIrY4am)9ZF??;_N{yo==Mas=&p1u*8Ti{RipP>95%5ot$Ur(R<0A(G}N+f`N5bd)b z*M3eOZD{)Ebz65-YX_%b+^85vY1M1pev7N;7X7KN?$v^4jqQ($krjSUWYbC4M)8Le zh&hpuwUMI#PWMsA9q~Nii@M)`qYu(g5c)smbZr04>G&J``KZZ^8gHF*%52ta`F^C_ zaQ5UsFpDj`B1Uv?e7#Eynq<~yNHd2X^-ePXhv8fKb2lNhgEsq7Lm=;elZpJJJ?Q^J z-+^UfmZ5vh90Wj@ONxU>e-3a)bSG)#OhhBp1+l5G_X{pJ3{PQR!t zl!)9}V8v6+G0EAFon;U_@6ygNQ!Q;~jr$$rCbd@BJv>{#BP3qJG&z-o3cTFP}g9ef}I;%r)XfYo;r2cZAmz!&} zIV}CCJ(~jMZrC+6;Iwv@1|g4jifH%0?&(niT0_o@N_H-gVs2T;_xr|sAE-*N zXUieVP^oYZVym&#QF$*Rbkcg@wbYWq&<3#Q>s%sOyO?ZFQ1|o_hPU?3NXW(%;6iqT zBm^Y4`c3>xOVxLnvKe?_(JrT#YHaUG)=&`(8T0<7+qR|K=W8~Sb?b~q0!zM!1X zQ^B2MUYx^Nz(a>-ah<)b4Ce_=97HNMrySmzvdcNIK+2x&$N71 zFObcDM&-^y^BYB2);VVq4&bk?G0d0SC*`vo!58>60B0x7$=0A@UntVikja#hZ%mWH zz$+oqVm|v89mUh~g5SIm}8cBR-9iJWYm?&+l?87xmVEyq12kY-cM zdBVlUikO+H&nZ0@3HjOZ;=T*k(6F3H^F4kZz;Ie^7H9P+QFUo@jM2(9uKQ`vZhX9y z>1VMg#dfw{4b&aL4<+;_XX&j zT6VDD^$vyw>b!;xLQ;|8V?A+V^WyJ7|IeWLB23bA!froOB8wqCv1_-;LeVr^M^frR z&${6TNASoo%$ zRwJB6(?9MdHO6u7ZO0Yb{g~a(sB?}x#^SB52GiM&*2#Qf<;!UCFisn%V+!pNgSJpj z{mB!K-qzXuz#fr}U>*ba{~NI!X_m?Vz)0BwzZ?$MUoN(tk5lz9Q7F{zG(_BI+2pZV z152>U1=#9$dDO8j?{av|QHcGowwUe85W?|>w(b4##ZQ7OEJ$|QvQE6H`%2_(8EusV zPJ74~5pj&OdzT2|EB4UpIUQN~=9ru(>ZWq#^|DPnvi4^WR!pM z{(%&mK$56JgF4A|Rg&gaEHzSR15MyF1Z}WOj;<@cC`_qZsf}{bKcUODWvOUg(brnO zq>;K&UMkzr9eh>LcC>7CtJLZzRZf_84w7~rlPmDh{y@!}_jbx*jT_TIMZ0KJ@`g&| z$>ZKP_{pl?fLdZ@4Uma5V&0AfGWO1EyDP%h+Y%1YFd2#WI4GPKGHE{?JM!y(ffD2F z4+v@~Oik#OgEH+&@zG+bmT|rdop| zs_G)#uD6NYH3zCiTmx8?JPx(Q`+Q==7ZK_5QY*ISA#3?#dkdSs8fscimiD`&KcvH2 zP4@T@!oxO}S&4aGW27w2^2~R2i9#}10{oQ=t(YK$RX6Qx8Lg@ zQmygEe%=9&9y)UF!F_jGf!98f)*C_1nbk|wMjagnS%8GQq5y<%L<^m1O*w@Go9yJ2$_Bh-? zQU$69qs69S-nzufyeg~BAwc3!2bgJahnkAT2G_W8*QHJ@Ze=PsOJW&K4GV#iWeP?Q zx}M`XQe$6M(PxwvUpAl0sD5g7slKiVeOPr4Dl*KwyT$8iLx0VC%DrWYjnm7aZnp%A z{bDMOD6euX`nvs$rZ*bH2E%%XKiw*gAH8IzJJd}8zbI13xW^cLlO9a)R0bQE`3!0d zGhITDV+V%G8G1s@;G#e7eBJLbW!6C6PKh{RgK&)SW$F z&?0-)*${7gw#5}}LiCpR^dGL6eK{ zs5L46PaDP7*A!#X_QpDv+jGoAVsoW?+=hu!EP1DM-99WOi_@{A>MWD(te9Y zeRCOeEqZ@)OmJSjl)eGRmXF?jABxa3oO;V0MQuxcsB0V3{7vXP{&3D<-|is+{uk{h z4S&9Mos3GI^Xmz37NG@_& z^c6K9k7Gstm`cs&;kq+?J23jyA^+im$!1iNF&b&}h(6py_vwtP%mA!9&XI;9eyBVE zvLFu#&JHV?(?4b?#?7j`Nn6gohgw*;bA9;N6ZwCNhyQr^6ga(VE_(yIc}f22ygN{| z!_&DGkA~M%mM`T;*T2bi@2~_+{9ZDUa9A7`*@$Aw$p3t6EXsp@FNO1YB@Pl%5Sg^u z#XGbYkJFbsAc9H}&k4+s22B`2I!ZZjtve*4fxpbJuQwd4jHLO+9?k0 zk-U9d;uB*$M@CABr$D@5_Xh79A8BE>qE(ph#KI!#_!3tj?Pr_j=fj?W6U5pfFu5Am zsJN98iAPETQaRX+yaO{o_*qn)S*SI&wvyOD zdVN~HWtYO4bg{Ha&;h-uhI`rWSqQ%}E=2c%cb zx4n}!Vf#H1e;nN+`#g1lK9LjlZb0+8chZ-qpUiZ!{FoT<2MRKvY8c~qr9THp@7eXs zkbp>X_3)qeS``by0n5;tvc$zFC2sliv^hCsjjV*3#?EoFoH_}ft2)&zxSu(o!naXIJQD4d8+COC+*=Dwe_-u_GyXb=a1I=uTz=Q7lKJB zQ1g&U=1kt9Wg*b_@kkq@`9-&B^$*c@$7G{J%D#RkUQYT|M-A<<0hIKgzCzhMt(t7{#O0kMV<`=()%D zcQ@j~&a4NHV-F^uBt#6_*{2=L;j};q?ab!()!lig<2nS`d8e>G+7RzCzR#*F%b7^rI1`8)jZ=g#`Ga@0&x1 zwg4lz%GW~s;vay0x55(xf%pdzh$!8b`sJ~Z0^tStjX$k!rWI&v0k;B6(T%&M!ZR{B zE+k#Gi>5Jz02_`O&vM-PGd#`FBc?s|!QP{v^Mg3eF}HX8WQP7)<>|V+nxyE4jV<@j zrGRRl>Y_p#-h)>~{Vh_%vZ#tcTL=sv#Lvyk^L^T+8Iv$ZR@Rh&7LR@q5^o!@8}7nw za1>B0Qww78wso^z>KjCcMgiJ{v&+(#OT1wXSjVU17uU0md{D5OO#!v#rbVG{II!my zb4C_nlZ^H%m96N76d|;h4VNvAN5fB*H}sQYQcYJQVf%wEJi*5ow$BnO&kwY&%2}zJ zI93@5ZkmZt)GrtclI(3F6uWA^0eoO1Nlb7-1|#B8uHV`r>yD(`PQVv`VNeU1weH=D zBg|J_D9qVNN3%;Z*kQ~KUbhnoX2+A`WX15-{ZXw#H7 zp*NV=%26@Akr(Gh_*)J%3CXV-dk4z>>?=ox4ms(G;?v{n!-@C_Bj<-dpXNe#y`ei$ z=L;20#TIvyJip;j`%h`&J{EqA!&wk>BK5|=W^ev#I-0@-*SB3eGSB(P(*AYhWrDA8 z=4qfqAd|lJqfY_Mj|0B^)Q~hSC9~Kkih6L76IU)d^9JPRrPoE0i_e$~;%VZJJjB_? zd1qZanH1iNKN%O2ei1T!YTYn0DOT9tcHxbET%+8jkc%k(h!-r-e}-K~doY+x#L|5^ zvqe#^xtpr<2mdw2*ei@bgVg7^^lt;)`cFKq$>P`21F&!sxgyc&s(;(J|4)yHr~9JO zg4#0coNsf5L_BTqO{&{iB!l7`28uqvqE%~_pFcOi9w2_oJS(r5 z6e7v<-#9leHS71Xx)K!Dt~hJAr%)X+DqK8}GtgVO=1X-goZ+ict%P5*{%mHO?Bj2_ zzm}-;VvoiOPx^`?XMMx)zz^f1Gz$&-d8Ap9Y|;#7J1flMP*m!$(PB2H>J%f2sHOfK z!O`?fhTjJ+`$JOndynUtzU98tvd4`+@6W*`ypE37({u6mNzEi zs?7v_y>(emU;ejNyVex+VE%q^{Ziy;9-(sb?6j&RuI|8@rnB~0fr30Am{T(bOt(tq z`wnH9xnBP=_rXl<&yUZ~%!*dm&3g1XI)so13+p_f(WoL@lx91`mZxQ#Uf*P3e{rG) z4b`9sa(S?x5-6mN1+Dx2L>24cV2j1<|M-!7;yTm0`1-olO75933%mX?2lHCK{Kw>S z5m`@3i?>u*S`^SwM^aZvW*o%Jt8|^WWiEdeoftFeGUh)l)#C$3i;8GF!^PR5`T2qU zC)b<1X@RAuL<`tjbNM8c0l`I10}4rDG{Fo+jw)Qr)|zDspK+vsMnZ;s%}Z@H*J_zK zOBjpx0`%^4pDfnZX#*<1)Cn9 zIPY3&0AUB-%PiGzNGRRO&LAot5~$^89wOb1H^JA459FKu1d+&GzFN5RSXK05h-(|! zOaJM7^PYH==?Nd}Ul`Vk)wSfekIoxL;|R#f^DNErJ$FCuP-i@(+AiHy$$RR(=d{?q zs|t%sFJmRq(5~Ov*x75EkGzcggn<~zDaCG$Od0jzE!e?3DILs9VVNLBX&$TYm z4YyBfxvhJoaW|}LSf0=ufb+6}fn_=bTByBrGD+{flmI>dUyaP!#t_^R;R8Zn>ao*U+`u zTQUJ1J?@-h$BBW78NWh-H)Fr?G6aMZHUlH`_bZwt;CzRZ^E%G&%UOn@Xr>C_!595cLk7R@~=|@L_}-k?1y1lqV8Ux%}P81tp?tmE-{_ zUTTeTHfjYf7NoiCX?xhiH76m)^|H)(h_k_!Tj^gs`HVS@nMNRcwf0V%XI2dApz9pYM{s>zm ze=5C3kqwE9a{D`f^LHr)eHB(LMP}~o|H0l{M#Z^hU84{n2_D=bI20Bjc(CB^t^o>y z2X_hXTDUtD7F-HQa3?qv8Z1z_6%OZey5G0^ynVm!@7^Ex#~tG<{yc-hco<{X-fOQl z*IaW_FTJ38iRkysBm|@(^Fmk?xtqRISlpsZ{0@G!?~rpcJa*z ztW;l0#YT_uB;t;9P~Mhqb+}_@vB+9vH8t%tf#=zO!N*Jt&WB|c%RbvxevNVt41{C! zIs@e6ov>+^vJEZ3nPql|rRQfm#WFlM$raa?T1&orNn!N1pQU(Chu#Ru*JN@o@V=N0 z5-FX!pJYwOA3qP{yf=@BT2Uke7du(}2%t-QAIvp+QeWDg<)!DCL!(zW{Xk=jW5|DN z5n)nl0qz4uE_myHm%V+17C}{5<@B3Tjz7LmSLd|wAX?nWmb2Dk z;!HCMh(yB?=ZL~13F58=ETFAL8aq76SsM#Zn>*fH!YL3@%`$4|tz**j?}k4wx{q2! z6K8fR7-}5Ym)Kn|zrVkwlV8o&kdeQ!B$z-J=OLh1WaeufJbBN?Q`54Z*1`c_o3R7T zDiv~EOSID#>(-)+R^_i8Mx{hTc7CYZRiTuE#}}jWtOannY~ZrHhy=klaz*mFuyZOQ zPl38CV4<@y)U(Ecgi=_?ihU65}_R zYf25y#nK9EZs_PIw30e@U7!3F+_Gf(oD8#99B5d_@v}S-7;45Go^KMMpZvy~Vp@sYXCLflg@ z>xc{;bS>U!L7KJQS;W{qDp{up#YF*VYAfw%d1Cv}IE4G3_i_{4YQ*wHA}m=Wy#?+V zy{U(`yk36QroqsWSp!8OJqD#CH9q~Kb|@{DbC=Of`Uxg2p?lTm9Z!eTrNPrjlGT=lwrZ2|rHItoqOd~FpcazWh1w%^n%`G#W}zck zA{AUz3}ij5%H58MT>8N9>zW-K{2}kwGntpHH}V6|R@FMi)sDz!j-#FaFQSSGTj4CW zkMhQxGpM>F4_Eo(UQ8ZG7Fp%cWh>*FjOCl5*)sg1ok15%ey?}dSgKw=x7p6Uqoy8Q z*@2rpc+%Yt>9;%-<@MgBbI#v%{NoC?e?1nlF6gbZ!G}?Uhq{ZMajlbi8&E;zK|oT1 z*4g~Bb}iQUPV-uD`^eFc3De0kdU!m|(xIHNXYNq>&(tO}fFs)CSO>tl!O^5+hBMh@8yA#IZ(a4V;(0?kT zeK)`?^ZON6_KFvORd(EIos9yF{@KVCb2rRQYONf>U)+ioTcPKf+9*Z%R zU3fzWjs$oa98qkvKXiH~H?>hlCpjn#OyaT2i7OkVIjn&{t#0kWy@gWrC-gn(_z0EX3QK`P7Cu4X^8U5uqxw66V1}#= zBu*I!845Wdf}yxSN>7uROEEy$eTU2cdC~~gD6@r1pq-?y%5da6hL5rDcGB5Z>XloR zU2NW$^(+qyhsVH!1$H6nU17Ie0mXu>W)Gpa4L#C>DH_B>Qj&ZEr0*4K-3ZG|KVH5F zv;vyV+KYb_N-8+wC;m22hfcVV__`R9!`P#KEsvO_l+mvu`g*abRB70wYMgYO$qrR)rSls}2gmT|Aq_iTL7`8u0y5S;W?tUZddQ zmHGt&A0pm`Wx;iqX5m&-ig-g}xfPj|?^OPNZ~$9t7RI?`J&Z(irjl9O=uqDw!H62K zULIVC@&Xn4!bONwOuJ&A71t(fcf0e{!fAP$r z+t57|u6E*)zXJGq*nj=OL1&K}!zyK?pTBf`XJ!Ub53&Zf8ei=^=X+*CM5%4b?ePwl zYzyMt%x`bA7?{B7g<^Oq+|%zyXHT@+huNy9=pe>4sa5+AQ)&Io%p=SUtF**2jh)5I zZ(ByXWDIX@hbS_JST>osau<{HANeh9t9C-2(FBrpZRV_l4nR@t^Dn=XL(2hl)M;Fn zn*GdirW3W4eNI&aV|?`Meys3Vp_lVn;TS>&<|yB*JFBlve4IoA_^CD*cH*y4@a|f{ zR`g{LSL^K`!qWnjwtTG`C)z$7VcXKv9{16{vrieddQIR|TOvItJDgq00Z#qob)Wbv zs!q~pv+dcu62A{Y4DHpyOu5^nZR1AMf}W2I(obKJXc9jU{QKEhzoP5kpFOv{u1`a% zzP@$NSqPO(JDtHLw~+CxDg5}WM?DC9PcPkx@q&8eT4A9f{~gP1>9tJ&a%r&19C`ck z#&?x7+hw|}v7^{NC8N@wpW_jCbh)Xw&{yP`&Fs}aEeGpDIYl&|2}C}BD>q7mpVI{A zp)OQ-s3E>X3q85yO(P{CVn5wnn4T$^nrYE=5(MT*Kj{=rugvS9UjTo=W}53xG-ssy zfAc}0)U~yC05?jOGHXAjhK6dU!JzrigT>zjLVRO5p~F=1_NbJ5^^A%dhFY??q7sp# zGv#(gu~laP2&i_8XqAGenmapXv2Bz#I8x{2z|H+xTUV;+D^<7(dVpWrvo?%7sk`I( zleNd@&M&Kg%BRSYCl!}pvWIxP4#k_fu&I(#7s?}(eAutHg`GzT5b7jY`fk3IZAT-- zjJKj}YV5%SRq%@$FN)ZK2eKG4n!w=Z%210(Gzp)34%#ybG|pO&G>q4zWX7Bs_@zmT zl217&lAG-PLdy3v4^&G-XYUq;M7gJyKv47h&Xwx<=uuJ&A=##t5q%mO9HFpRU)E^* z1dM`ZSn|_6hti+>&TK1(W9fG!BNd&)^y&`UomKk@x0uj*ZtE{4#B&Q~jxAH_yj?E2 zwmim;LSSn)wCwMb4Bzv3njY(c(L*x#?1$1EX66>8Vx0gkPB)uN!{h`Tor=PAIzdyyE4kJd*8*?fM4UGdiR97r(zZ2&VVe98jRSvq zi;k<8sE&J;P3d0Nk29Qo;lK^9tF&iyGTmQKVr%rMU6ABZK51hQI5*bU@XL3FP_}!f zR+Vb|5=aM*W&p>IdttdWu>+j#2SOGb#HmWW*rfZ-3{M`N z_;T^-&lbA)p^;OS``jlunf>IR4_DS(CQA9dIve;w&L;!EF0>%P z;WIvqqD;gHVG;O4|Uz^E>eaqJ> z$K00eR}89(7R)wO;5+txFDs^HF_Hf!UzN{Q(6rM2grDpLzqPKZDq7DykK)q!XEQia zkvoe_N3B+4kC!>HgjN7uleOVDMz`udvgB~drrWc8RKzca`QI*g%W=N`Gf7Fw?P)SL zY(QatEmQ%~j|)6#*_RtygqyX^rTLr0BMNARQ|za$TH<^m%AGzXdzdYqpxO90{AHYW zJWnREOM*J488EuwPs29*=0`zt$b(=GwT|{M?fKx;{##V?cr=S-1Zw1B1ol^W2a7KE ze6fbE&kA06%h4aLbE-v+KWCvmJPppjudF&mdT)#o#rCVzE}>ri3yhjZnk+gg# zszCkRhQ3T^oqUl08wF@dl!Ss_NjFyH-77hIAyH#>cjPSMr`ScnCTC|m;FIn^^j$qOtNXShI7;qoU(d(O=WT2lM!FeJ zq~KMftNAN)a=m}}qi}g?H&xd0r&2Q331w#8Ui|Sefdi?D#L43uvy6~Vq0V$>Y##21R;cX`u^Ykj5){xk6T!t z^e)W{tyERNzxGkkUjlangyWpn9PTzPf9)sN5^B*RYAM%rFEkb7QsHp=?j*{zLg>-R z##zW7&3x957ZikQG-pU_3f$~dhuqtNt1A$K16nP@**B7Z2cVzkU2!yJ3Jqd$Mt252 z&aGKIc*sc?J5)4c6Zq$T{ZimBC$nFg@TAvOYSy~HC-oiBMKG!A6%+Tj7>6=595(xp zsvqf}0KlJ*FC4lg$Zso-j}VFagcCUl7wlo5Lrp8DrYAB%_f)FI8ZmOTr2GKM09u*P z1x1wa6~V-`YBs+lSK$vLI@*0HSwCsePc+>8!e`dkyi9muM4a4|1wg)7x49;G1FW`v zEzd|t{HyOXN0|4{fW6yoBc_CRu(}!#tAuoa*$`%vYVYqw(D_MMSI=sX^!q39JI#G0 zjhdaJ-$xI0idjW(CRDhI^jdxtB;}F93~ZMV9}O_O(k49j`|NFOY%aCRl=gx-*T*XX_;>N)Q0 z{hV%u;YI-!B!#|QDY(DwiJDuj!JhH*W3u?jlGLh%puj@%Eq#R(?^C<2jXdOPYP7Dw zNBWJ=KU3Ny`1-G|i(B2f*q*CdtSLDQH4R#(tWz0E+z@KQtl zk6NjCAh1FnAen~S5B-(RZ&CM^JBOxv^9|z1HxeRwW+bHM4Z`DHTYG*zjvSx#XT5+M zYZr{nNBeGz3qaw{oW9sL$D$^WtXBxj9JP7e-koa|WX+eD)ldzaMuOXHmlT>UdMzWA zl<1G*T82Nyi|O#1X-2U<1|)-wc!ihKN&IyriqrIAXGPI7_2L^|Ckgv67G%uo=`oNqsfQ0! zlU;I#ASkNto9>lVZIo#Bt=kTG3s1OA6%cN~fb1otp8Ascp522r{I~q4S2NU}i)<0y zkppLKyj3&K?>wBFGom=BCYwBQSz(L$>V?|xz6?=}mMmxv?7OWneVQ`q^idx+WU+-3 z%yv~*-^-xpWn_(Ig0#xLRE9%{KCU<2b0rrZ(MbZThrK3DZhJn*eN<}HXKgvQIUCl0 zz&*I@K4{!CDw7B->!$cftjb-!zinXFCMc#k?+yT?V83xGawp`?5@PXg0$dqUsL13Z zyRPYXhEvoKx7gfmZ!oO;9UiKto@DQmTsyMzJCIh2sdxSNT+i*WdSyUg!r`H{Z0A+U zw09fkqjJ$@a4$Tb`0)>fBn<>?We=tAwp5JM#;)P$dyd^26K%FaL@KlM(iW|(r*hh{ zN3NwqrH?@jc|YubC*RZtoYlttfw1Z*$T87M74taOAyeqzv_}>H*#EPYvp1Z81?AP4 zNz~;tWwYL1v&LrcE+vy?9x8eT3~K9Sd2^xm)JeRvZTnLr$+FO&#Vti#`NWGmz3?SD zlq=@6Mp?-0NUmlknqgmu+DB@r(|&&C%yQ;HdD;4C8B&!-^;h>Bfz?0NW*a61_%5e! zDtu%Jw)w{UZg~bgIy|Aca-&D=!ZO@7_(`QiaqOg@_WcXgl3aCO6TAwqzWjh*@1`kU zkCCF=;~|kU=j8Wn9j$=f{nOF<^5&V9#PNHaWt-&r>i<>|@3mkh`PAm&y94o2a3ZDR zUBlr2bq!$r#FDsATjHKSWYV}?bB2{n?143W5f=A}8g-*qGQ(rP0)O=)lT%wh`?s3L z(5;+Mga~aL7pL4xD7TwZ@kz9F~T#W_*xpf4-@%;t#{g?3nk7T-x zap`&*u!A-2mnL>26ma;PB^oFT#Q|?JJ^YaP3$H~u5>SX%S}%>ulsHmog)OHnff!|a z*Fy}*q0l~m=#ygvbiWGOd&%ij`9^epfkR9+&!G0RpEyP$k(RnE{UB*}Lb&RlfcklS zZXAIu0Ixz>`~=j$|B^X4|7(;fWxgqu*l*^6;%7WB@dF2)BbTICPT^>Ia|l#xyCyO$ zF1n%oc2Ey9P2BO!^vQcc#%QI)hpU;Ja%~q6;@4ynK{NCg^ zlO~w$o1<$hxce>h={uEUmtJF@LI|dPdT>RfXGrI?LxzMKHTyI@3fA$nS|N{Y6u3@< zznPh@#cBA=x!=8UpSZ1Z?no*7@p3M9g#zxU#8Z;J2y@0gwtz)-6#YcQmVe@Ey@e3r z(gO+CwA{nx_;j-|9YmT!v)XtXu)I%=9;mva5#=Njo8uKVghK{A?!N221nA zVB{Sc$C|A7&Cf1vHc2w_-1wjjrE`GyDSzC_JwJ*?(u%nUkEI7?^G>o+cQH;~eceLq zZe=0EOBOYSL*3Qn*B5E;f6sVNOUrd=%oZY&O7<wab`CNgFW}kUJwVZ1hHI4 zp~4Ymr#c~VWT86aqn?HK+K{Hh>_a$G;yuK0mR$oM>A(wpt+sj@U&DB5{;OP!olxJ( z4_Tagb+vN30Xc?}FX}hp8ZYD+8_Ea$#Jg^NzU=f|-W$mqqnpUsPpH`5!(VFX*HR#= z&VUM}1_@doC2TyRFCyn*j>OJgmL41i<&EGyI%v?h=%~$VneYa%3_VO2G7h%@!%tMy5q$|d=su`g<961kgeg^W0hZqV` z=15*TnS`~i=KI3;3E9=E9At8E1rG%ZtZRD0hg7Qb%ROat_IFCwQ@B+X#niwm7(c;-gs!1A z2>grSi_8wI{*e)~dWrD`t(TJ%v{9JAy59O0uq}049IHi~*1T8AeK*`>d-fQ%W(N9MqcEq#g+}CRqv^)k0a1> zQ)JWvVikr{$;G*##)u}-CJwPR?_cLu{b^(SzhiihEmUcv#cUhpRtRzH){A#a%j5PM zKl5k>uxS=ouTD01o@ec!gb!T8)d5i<0mu*njN&Je>M}!+RvOUi5kbMYAHQ0+*7KSlAW|Eg~UPrb~)qSE6Q!R8O zOjO!ZbEpo>(F1)mRO1SJ^TkqKCu0-?iKaY!h&mD<3kQ#QTNitU%eAG*tb5);{m{X9 zVBMmHEa|e6YwJ5p+UILtkPnzybkzfsblLt20#7pA@vQ%8Xx~g!mYCZB-N{q_Ird!@ zO`{_@HQ8u%cLF(t*=L`;=lPq-N8q+49>7rzl4mKP09I-rE^AlyORqeaPPj*ORys(& zBiChV;nTH~)fyUlPiar)zB_knL9I&O@nhJzlmk~(<3g*9bDdVZ4d3mW)*c^3 zU=Olwp1ckGek@5F)y&G7Ze_DJZhqK!dY1u!l%YEjz!&~np|GYZ;Pai(u0TDyrgNxl z<8V8E+qhBjg$Ny4%AH`_{)M13pfOp0O#RIvzTHH>d6PU&Pjwb(6m^ZfR8>-5{nao= z`r>JS(_VG+mj2OtOJgF7(oB`L=W|ned|9b|xb*5O$+$bskmVw5#|i~*{wPpI4QHE= z+Z?%@A{@09Gu$MpZ^*Up$Lc&n4(y`|fc>|lSUQgjN93dUy)yqZPL*~y?% z{;HYI?(%`m+kw@IP1&W1bSAcR+Q+(1#!9=_X?+)PQ3fyHbX;NIcsjnVei)9t(h)j1 zRM`v6odchd_rDMuFKGoDX;jm`&eqXHYQUKfF6oiu zT3Kf*xXnGq)Q*hkYTr7pZDWt8vqqi!NnJBmbROAgBh^55BR-`%g>#dVohw02uoHf z%IlXEh;*UG&mb=iE*+)7d55Dp_V&xDGuly`L5e4kFwadjCE1Kb_nNbYw|XU{5Z0BX zB&ZE>KU^H&56G^Z$eS;U{QdLwcEP|1H9VSlTa?fKB7C@ zuu5`>fAvuKX$cMvZ;;pcz9Q%mYNLy- z>|p#Adg%u3@9pi?pH3+=OWEUwWUM(oWbg83VNy4jx6^cLqFYc5E|KoneWS4xnF*AZ zdimLVHO*?d$WL5du3|H7?t{c@qITy?$~w-*W#Se;wiZ5shOOrElI*N?cEi^apl>au zM~O=)Sgs!|GK+Vm$heut++2&@XQL2WjM|^c&Eu_QJbJtQc)i~?=;HN^cX|XWXoTCNEgejF) zPC;BO&0I{z2mM`UbfxxJ7r^`n01J{r z8A;S~V+ub1W8CT`qShQkXX^bA!$*=2xQXI8w@j6LN{$ie%aiM>-VY?M^fHUjT1FV< z*IehnovrtbXu#r#Se@xU3i@CG1tX+6p1?zj)(=+EAZ}dl+?QZs9u(C-HVDw*&8S+` zV*u0A8r4ZN70E<+M48j%M`B2!NulG>^f`+6*bZA3sdhJ|nQ3zXdK5Zm7l0J8AFy@_ z%XYgWLRSQ#!?dLa!JhURwMGynuSZ9BS~I{Mnk+&E#fm}A+!h^L2Cn~@*yHRxV2^fq zTQ^sD5cPP^@AJ8m%!{j>ghQiMcx|CV?La%m%oy@tvL{f$Pd(4IFmhr^faIMc0s{ko;qRD*OBXjp#g%FRQiyK=4{pks zp=J;qgbC8hH>#{kmdsTeyb&@wn%~ zIyqXJJV#H1B){Y4`_~82zti4b#f#ixnyneo4aUaud1D()PPuxhksgPPkBsy!=#ux# z*5m&T-SqlQIFx)KHppMBf$J)Mj95Yfr z05b?d&=o6hY#64xM@ve3@Jy$5Uw)6P;-`mnozd{@0Ze69{}f7qcq4C|GySN%9{z4Z z%P)umdM3y=RP5aQ`tRH7KQ^lWA8h2m)UyBj_#!#adX>`<^eX>~tZduc1#{>!k&7BW zRLYI|U$e-6e?O6ao(R?yt3ksb2%7oIv2mY{j9!E3Vaane4}eEW6ALY&*wN5mmOVHHM|u1PrZ^`%JZXE!7E3BPd5{pBu>QjTgL z+u}pfjrjMM;eziEjn}6ee(X@jE*ip|<@w~dYV2Q%5xD3#OVbtfw{O4U%o0@Tn7Tti z=TqH2m`Uq2+lf3iG^zK}cE@}`KkkRO6kPJmcU6ZOSmF}@^Bn(=b!8oVD}Yjd^Br7G zmgiweTcJr>WI}QnJ>wa-Z355;@x?&4F)~)xEhS_OnM!uf0mknkFe{p^JFFa!e?+Ud z^!4?D>ZC;DIJa?tYb)3rYBk0@#;k0-;*VcUjFeF;O*NL)OwI~sEg(vok+RI8*f-bN zIclbM{p3R+LJRjJWO~hGNAs~9{3t?6?zFMsbP}K=zE8>?YpdL(BKXh&^HHeau=07A zDjZ2x`YemTM@48?SnhfnB)e0;MJ;Ji_9%xK_c>s{1$nP-M7VnLoqOPGZvssrq)iUT z{`6e{fbBQ>0>2L0+Ne@`MDTxs<^LZ|u>L(>K*Y%3x(;qIUEV!%K>>x(!Kn9aBf}&F zSQ(vklo=$?fpxxo&$~YKFR>ZhOujrQL=P{6NBtcIH^`f~lnIWAco!U0(YW7|RtOOR zjrwl}X|5Nlo=s!@P(^AOloic>cPDW{3m1I78&kQ=V9;9HeA_RVMxxAi@q(W^P#$Sk zgyZ*4wdNo{GtI738i;Hw#K)b_Yg8o*7{ucKS!jVTs9 zDkQOzOQSB0>WA1r0(8BI=TCaWY^~}c(rIcltd>xB$AP*%KW2E@0-Vd+*s#ks+yCNK zWlK!B`?7)KUiu#hlsm<&ToIHeMXrHAt@gOkaPp1z#Y}OyhKglkd=Qsi#fF($c#wCGU=3AighD=asS`8%{=Iva)AiI9|9X`Fwz9#7I~S;1wTL_$NB2o1 zGVa6LaoA$BO*>11i+tC^9?48n{pA&Y83@6F$B#*V_@awsl~gOEgaVzwNP z0=(1rhdI(GD52YI=RRqNS9}SCyF|jbNWWDo4qqkxVH}UpQ7|0kcW(yP%5C z8GFfwkD_5*tWq5sf-2V6Gk15(ZU63qN8X)`+l3A)Pev=Pa|?xAiO-i7l!ksJl5S2vg}an zwf|44hjy=bOaI$m`hQbJ{~c=hZ@NnO*%u`4PzK|7FTNEHB3{wr&CxzT7t_reD@M(0kG>q8 z(-gcSN16sx_$aEx2-DyABa)w`5!q!pY-T>zsRIWzHeAP|L1JRBZbc_Yc+`ibWJ?z- zEJ}6F*xy&cz$GEb>{WII9t` ziKlt5RN_!c!MoDV=KZtamc@ak`RW^dsYu`5RHIsMD!FQi^e1cKh5 zhZL}rl$JpG51MNhvs%2_`G_Pmfqtp!1OFpJ6Tf-|Y?!b3f;$fh4a2R_`D)P!+KC$m z^kBUt6>jxN^JC#)fau;_eNJoK2N%3H3309v5R}qNlg7;kz0Jy6Nu9qBG4pynAyKVh zp0Ig(J@6iSZ3>TA$eJIetmDaXatI2lVS-3d#6_s$tJaAeBLHy&AHnU-DdV5jY34p z&CwEYI=Y-}AsmOafcD_m^Gug=mC}83MUrTmiAwKB)We?UA`GHpaMff2B13H{mzrz< zywi(mbBB4Qc6bh|dk7SQ79r0}929(K|F|EcF`=TuruJy@DoG7V14 zz}YIt?Nnb^;cDR!&;mAJz8$&HQM7*v`AAe&*5QGP$K-m~W>;k#pM%Q2WTjN(y#<#V z($x?EnX*8uc-{Dp0|yKxy%+ysUjl_3p>e!thurigXOxF&XLOD zH=-G^F$aQo%G1E{t!sJ##@_qDHU6DuHt%UYAkO=S*DcJQm3rz9v>Q!LGbKp@It_e^ z$YO!;!U0K{j)a6q3>-(Z<&KK?85QHxXARWdi751kH8X3FkaW+S6W)*PAbW$%cI!j@ zuf7bG_OW!4+Z#kwN$J9Q^E36-9QYscJFn5Dhh?L}-`yx`Fd@3A1jvKjp+16nF+ES@DnFggCcmtFxniEI*9~YMH zxOvyMI$$+OQ~oNbh7+Qrc3fJ z!Wu)@7Q%JYpXOw=42Jxtp!H8WUDxa|$_efJF@5#?>=N7XrFIXO#SwHqt2%dXFEoaF zhg!$rw*yUc6rnbDFQ}LyNjgePFSKOJ#G!iA$13&F1kP`P8?dc7tWc)vFXD(?O<1j)vZyG{xfzcv8r_i44Eo+M_I_hyqhhgqvcQZH_tT z@IF^6X&`qQTQ>QFsvV7*4GD047#@X0yypPU-FJjnKPUq+`a7cj%==*f%=@0feff;N z!87^4?)JZw7Jq*%uooQp>ZbHjZ(lVD40!PZE^S@FVBD35rd3usOuKN0B2n`R5^Hw7 z@rh{TdQrgCWfNhW#y0x%D4|5q!UW66Tj)eEfP4Frp05dP2O^|AGTeFDx~Gnl+(M! zj#g;=b0j*X5Rhe^BZy0}N(3a43*WvKD9&bdP{vb|bLGBLNfBsC_1YC1_+6v?vwybD zgKM24JH{um&Bkd3#?&GwHP0Pfyg|3YKOk4qzf<<{KQ7w84^YW~w#%ZKd4 z%Vfs1%fs0ECIa@>TM;y!cDpV8`-z9znqXJnU5dusA%{TxsJ1dWL%1(wny5^Ryv_gF zB&siQ_})8%5S4-I#ixYb;$?q};?6vr(#{e7lT$u+nPyPeZjWV?!dlYQ#8CSBOqqoe^O2hpWO+1#iSKhYcyA*vIirdwrnd(b3ziq!U%q+xX*@P?*%8-zy&m!7 z)sqXW7Qaa{P}`>odgPE4e7sL+> z$qSVCXZVKI6~f2U$D_vzqBhq>o_ljVFQfY(cg-{fZ|Is;R4YRGuP#wE!;`u)-cn9X zQr}rhl^8jWfOG<`Fiv+qG(SL67p(a<-z{7COm;+Oq9o6(=*@z}_{k&q7gG6#jL&8=HYg>6Xc3EpOy}-WlGo$n%|UzS}m<>r=CmBGhU-gu!z>i5#p0>-{#X~BUM-q{g+`6uq>^TaB)ZF0*S~{cZ4)r1k?p0E;s&XMEgr{`%jNl$q8WmzISd&2!T(^YDbt_sx9Y= zV^iJHGX)sJ@}jRCyA#VOi57VlsJj8K?o7YcEKYnSiS>1>WL4=4cFgvnlK3A8@}eeOEU}K<1NR2>jkW1Y19Ax7 zmBnNEe;`z4`|9I#{xIj|m zcp?PUlcK-TZ^fVDG(ri5WN%bV#MYjbiN2?Seo4iRh&WXjJk#4iqR*X&A5q@Oo@h%{ z6ZiqNHT-WbU*Dk`i*Y9@9-U_AGMbZ1=4&SDc(9D`<=2 zFn{}mo#2F?FoN$b99vfx%`HTPi*YGKl(7>Y%n6Cl?`AnVjOz(Ca$6|}W&;XGvb~?} z70uHF=z3@;xk{MA+YZxn(5ltp;QIPIgnMUDCN0#t&CM?63oh=4dNDd~@J zG{Psr15t0ICobJy#WhB@cZ})M7Q+5q7uV)6EOS?re_0_2)U}(U=Ou@5Kjf>8dTa}k z2H7&0;`dK0=Uly}s6deav;|kT8|+VR2ufKVJ?N?v`3?18f-u5fm8%?I>{9yn)r~zh zIdeGwfxvDg|D`_$Z`M)#a)b}BB`kB9N&&saL{7PbpEZCNH=_h*}<9 zZf(KG$@y>xD;F^KJDWdLY~V(IwU9afqHS>71*)=jHzy4ITAw%;T6uB|4ZDygm%hcViF_08ckqG;zM#i<3#%X2y6obC^n->W|g zBEV)UjC*Cic}o0&Ac=<9RU;i%2kt&&jh;K4P+7DuYWjJ{=SKx+!6u_ky0zq8DzUd- zY^FasTyA-P570VHH)!i9xde7+m9@ty+o~`AC{wHC?(nlK6VS=e>v8V^F3pT}m6`-!sNo65x!N7^vd=BkM(hG@PrD&7`y`@Hwfp}tci0%xG$Z|?-w=2;IX zInj!SNCHr41OUd=A2c;-l(Vi!(CO0C^M$YSDmHDjJK0$)m0*V;A50$~jXkSv(HbhX zwQrrWF4+6mBA6`$}hj>Mbz8P zvz$z=ZXVyLwD<>8$+NB(j@-qs$V-=CORej%i|SvxG#d zj6@1tnz=Y*pkY9|6hDDJ@Sh^xe?v+Cx02SW-tOzt3j`{=x359oz~p$`!}R0cIN_wP z0vHmg7!(+4d(??7q*vv8KL^nM^(Bbg$YNq*lE^}0V&1R)K4Bo`0xdJlR{;)VVBj7l zUc%Y%q$t;mfaW)%CGUVEN+h)IPOwESCCBbX?4rTio+2$l_}x(TOxc~&Xv#zbVCbGs zlkMnK;S$l+@;B93tK3J|yIm#<(Vd+UCoYyrEB2UT+xQ8SMvXhInSU;$y94=l?*+6ZxEX zIa;=G4q0_hkuA#BzKWynZ%4(-$BJnSzF?bHee|#EL(4lqU*k^|nlz#pIet*x$IvDA zr>9^-!5)@lzc#ttNQLA`^Cey}mEK7HJD-b57=z zKirwt*rfS{^DZ*PNAmgO-x~jUr-9Ci%6uJ%Pc>^d)B&Qy${D;0h== zBWf>ggY*XVf&JPjz{Ec=PpShwombfV;_AJlQTFmQ=dpBMP)N41@2@%Xm67!x|pQ8uG=#c&qX8^&_jJo62V~QJt5{!k1%+hx-0*)e?jx+P+Y>%8F{(Ri2-{Xy%Eb zNTopV?1|_;dGMI^hcT8esm0QQL^Io{390slVaUrIzzSo(gGwB({Nl5YM7EdtqF1+s zdIz|GQ4xB)ty}oIZzX{Y-7FzrGbvF`gZBMOCjwFjhr+=N#6?wS#8WFauNIB&-B+QED8`+>>cNo;{Fk4#7`}Tpr<^Y-}k?~_x?=6?3T}iZn@bCAQ zt&cDMCB^vHGxzTfIkQ0P)85^P_@byK0#)*vC3*r((%|Z;4S&Fl=70STO7F`{Qz~%^ zh{8pSG9GO2n6*IkRFSxnMZ1N24R^X=5!V@kN^L9Q$t**^tG>hez!X>_^UY!#S)_81 z_F;}wXP$p&{-^jVMB`#m8UHB?Fwmm_E%R`wQVW%E-T`0Iz#``G^#gSDXLU(7e*K}L&76Y^W$m-N>Z!HwJQVe6 zO44tt{OF+uE&Y@t^z=5Cshc{lKaVk5Ml01oEG0=H(3aw@)s@{HM9G}gT+Yg{I` zsOrEjx@s)xjW7n5XRIt;Nxi{Ju8CHI_MdHN|RELk>`1Q6#yQj?bZ ziS%9VL1bmx^DSAJNDFyW0kBt2=h}o7g$HT1^Ef>d18p`s%}&F*b>&;o6c{}g-=4XE zOmMsvigtl-_YFNoVFX#Y22C4}Z*~#}t5#@=-cqBUH426_`ZxDF(3j0>hSneylrf;b zASdd&YV;f2!#2ls#_T8Y%mYwbGDm}gcR;g(y|?xwxc*`E&h8QWi?F(Zf8(Qmj~YC{ z|G|F8jCcF;egUZ9(j=g*-q*=neLCK@*s(#tybK|R&UF}S7B62-sn*r*>`;;qH^xR= zZroqXFk@6iK(i$0zO;>GU_57Zl4vhP0w>ycM&0v|jgn%UI-8S>=KVcj?Z#zQy9P7w zeSL1dQ|4#c^jd^kET^4q2!E9b@Zc}Y3DT`?n}Aa@SMb>)tAMroWfs$$@pa7BgvwCq zMjhI*a%iCj^2n7LTh=H3@;WrcwS(Co&qJ*9z};WlpG;cJ;1w&E+)$GK?>v_b&?Dcx z{mS`p#%G^OcAM``onD6(pn#gat8zqjwYQ0r8f}=_S;dtRFCB(@Oi4|ob$YOyl$ zOI?==bhGMf7R!**!@k6@5P@kl2)JLP1`2+a*&HJ}KXa-$&q_U7@W2Pzu7BRY{l7Z< z?tixbM_>JP>C#r!9YBA&iUT&x%WQq`3qh@+3gxb$nyq z%sVX2TKLpU)5!NUIp;H1Bain7z2G+rhW0zLhJ*`@=g_(A?bPngYEXAcWVA;{9~%hs^CXF;2i zk$rCM=6a8HjijtaVM*|jPz<^FGF+=yZkvJ1_aH60Q*bbc~K|>n_SH-0NeC6vujokZ4V_W##W~3bMXmtm%|YPjG5!Rj8!)SZ@1ztJn9#$ z1E$(IT*V>VX>=Z#a>B^2pp!!L?ub`&Im%v4w9gBzbfxWYn%IuPN4u~8rdc$~__I1w z_j|M=O8f|LT8cO`q;&Lk9A-ytM&F3e(O$lIzTQ#5dp1;eTx#^&VH_9H-Tx~vQ zR6wWo#;SJkXy=_&E|0m2Ca*^xZPpwMnb`%*@8lmuK>4~bPY5(xz@^2-_gCuD-<3`> zuIwa6E+3`xN$j1#;33DE7+1h7f|1z9KMo8vmU48Wo=k2U$p3Kute%J-`V5F_H8>BpG!zxC)^xhLN;_JqIM zHt0pE6}H<+PSIK1@lU_@`pA)2i1fif{gopm4}n!yj_8L|5POFQ;qkM@QD*o|B2V0W%z}irz41 zfd@IyPH%D}H?xi5sIosu1jk#~`~{!>TzO(kHX#+zOXOn=xW66?_&EPz=vmRk=duZX z-OvQS-gm#A&Blh8mm-y9dC9in)w@MIEUTQ3 z6Mx?Oe+^Wyv*FAwcd8bU{Ur|(MPYZel%N&ii4&A|y{>x!Z_2T=NGbOIZEGpd#m=M&a@O_{Od!`&tCs8-ZxV79en`)C7>9<@_ zpZ5J|iWBG~cXso@&^F(z(o-R-7VNsBu0J$jv9Q9->G+f;1YoGxtq#1WUqZRinH=C)4 zFJxt2!=;%TXEw(OE=hW=9>YcneVj2939OP{LOgR1cH}KvoJA@>_4f^}ike!#-E);K zX8fJggFd?NLbWs+Q+YN?xV6c3@C0Nlp+1@FD&cwc8T^Aj)o+c$vaPb`CsbH~vxRt(Xg}x2N|1*u(I}RuCX;=a+h9O2%H2a;yG-l{fo4B%Fm0@ zA|K$|k5DQ4TKLlSW7(ZnD^Q1z*sv?g*B=LV2yOTrI%6rO*K?T!Ci5Rr0cjU-;-6av zgQYRDxYB#8t8EKn6S>l!ckUin-$_ykk9NG2Fs}Gg!ieLeqEk+e*;DPm-Z8u@doui1 zfAz+QddIm!lnqPGFgy!p?3J4uM~96Wp_@ih&LSi4;KJ`wtp}8|`%SIb(}peiqk!Ij z(;!fcYdq3mxRKzQhEe%fP5K7b!=-GXfd_qCRi=T{k+jh8?RR65GQ+oXh zrvM9GUOjaDd?8LHAguO;@uYn$faA87*|ByR_H~6*zw9GkS1rq(m2+>ue1&k<886kg zBkF+EY9w{Kvb;4G-e3?K=OGLW8qmCSjk8pMgkbd>qenff6`Gt`tU&!7g4g-}#qYJk z(r(BI9tGjLXpLU+l}B9(7F+!iw1$n~YXZW@jd9%^$TWnMIMT;f75OJ`z8a&#Wjki> zJ?q<0RN-PI=jvqX$p7Mx$}cT)l@<9|)xgndU(5z>`Zm$W$j*79Y{K3xki(GgJC7}( zhIFgZ|KOFfMSe3@&8mrIZg#boZ)I|A=$Xb%+&eFkv$*6HTZMb?@T zc4r}<8JqEsQC=sn58Qnw)5h^PCWpO8jGgr+WoTz{qV)xp)Z9>J|AI#hHF~55!O9wD zvbR>9ZriSxD!X5}m&2?#M^f3#rUBB^7tY50T9rb&H$(5~zME$Lut-(ecTjuv80E^^MRzAe?F4`@hp#i=&ITqeU@ zg+>Eg?qyFX67YzF$Q$P7|!8==Pd*RNAhuMbN;PX>3GU+vsZLQI=IF z5i4&?bPe0A85z#>`e87L!r?3>ccK_q$VGwMTcQIWoy7AlzCiszc~pP9F8ny1Xp}=6 zZz|ldnFqg@Q~HB#!d`?U>LL3)q|?);F>AHLA(St|Z-2X|r)~fFDqD6&uqbF8;ZrA9 z<@9uXi(i$ZQzvtmK7KEPWkcXk&<;}PWN%3!jlJp#^7}wy9L-%Xj5{Ro*G*3YDaSh} zZ9RXTYf3UQc7lh3KhlrXj=&T$;lybVog-VC?q-1%>$lMgoKD|PW| zHU9PcCy4<9*UP;E#|f-5|ZPdH{~6ZbqR z>h3$B)uMQW;-f8yqb&*53|ZxoFgB~hT} zEArYC%9( z4^1VgOhTAZjLcR<_F!#3HGu(K*lad*@kW!gq5#>fY3lkgn}WGT-gtyu)M==%52 z%eelf__Btch+oleWsszp!2_kLyH8iN+H4I$)3S;Wg=vAiH`LV!AEdu69uL2nM+Zmp zG7RDv3^WYVe>zmp_KsotT+JdE^sj#15EBaKB!vAmc2lAa}-f_gU` zvC_bK_k>==xolcjOE%@z%iT`M+f43*y;s>GF?SxnRtNjzz6@)f2U#$@=@2^cgc|1Z z%2`jZ0yzt*fF)^4yJRWXi|S|(KPg2 z7WZj=E-at8;95Ady^BqwdKj?@7VBe}xCu%*+HUHZJ$qo9T=@2@>*r6KnV$v41JF z_a=9_NPH-H458Bjy7PQ16pB?#*;6XTOdS`prgHV}ItqL-_lHzGtG$j0vfu}$xeA1E zje36PtvSg(fZeuMK1NcHbMqp6daevJRrrC=s;q){h7a({l0Yyhv5py(2!)Ux`W&$nMTT+%7=(L&!W;jWEyW(K9ZC^Aq3 zS!|3_GX1mn%nU)jroP6Ar@NYG4M>acrQ{LilV@jqI61u&CkXfj?{}BI9e%rxw4!wP zT>=w^d4Ns!afwGXcf)sz{~JIQ4Ah`QZrsSRn_SXkAFl8`HNv$JbF5G)MXl8XsurF7 zu}IuYErs5))_g@tF&ijSLNlo5{nI{;3X?d4xxE4v)!6Db`mE(5Tb zMJZWa`BKRq`y+{bK}M#{K5W&Z*(wHBIjOF+Le3*KAV!7wsKmzfecKZy>Ul>gr`D8A zYQUuLwkOLdHrk{w8R2t-mB236{6(tm6XgbY>v;J0qWh4ZASv-pO)3Wj$gz{d5Y2P% zKJx?vxvnPm%eNBGil>6`aag)<`n%k(5VUg1qK5X*h8(lIoCS+pS=o>Uu{K#-pA)8? zIX9z%u^Ib#skTxRChZ9}8QLH7?!!i{r_YXCI$DQ~vNLHWOfBYsQ_j*7pmrJ~Dmf-jT)(%hdmZ zLD7>(-{A}W4xe6sT;RU_`JQvsuhZyl*Gef+ZN#1$LpwvN&(v)y+@a6;$2RAPlB!mb z_3q(4olmMt;i~(Y7J{$A#p9qFJW{Ot_o4yv>AW^+T))n3?j8fX^g(0SP5WQ2(gr^I z89M`mO>NouHq22{D3iglJwjw7vB_`J5)U&E@2~y%{ds&kmR;9x7OSdl#SF7D1Po5< zS!ZiXm9-rXcg;^kyoPeWx=s}GWR9cR&bcL${whi*&X@=Z5!Gf@4QOf~n_GywSiH7n zIMa~04TMpX*6iF|AuLPm;Fui9!~tT8CC5$bJgrP z`LyU77dSdt{Jco0-RN(crG;b8a`#gOsgulq#R>o9Px`;Wi$&hjr~OXICp1+TD_>om zp$Ut+*$t7gkg&&goqH1#9&5zW=P1(NetKc>l4#G`Kk6|4?W~J@NOsi~j$I;~&BXVv zTs6_M&G#pQT2qR>r5>5(v-c}WEFC6el;di2kf~$=5p&@K->ACygc;`#$1Kgt-CZ?F z*!K2AyNSo%!o!e?4;7p}4G9)zFJ|}6$|&DLH2aipQkL4s-c3T|a0>zRk4c6~UX`Du z9PvI)?qLOxjLH2jl5G7p6YO<>D_L4{i&e&eU8MM~qMJ%BU%xIf!VViCiV-cWh^HkO z8CJ~(-@g~7ZsFrJ(@2xvxv_hCU1Di$#eGD3n4VBENybAC`{0ℑ6QdJ^U?jQF$i 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 z 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%0AI09pKJ}J0#5|}YDuNmbrR$)wsK_mMD_*+E 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/modules/6.jpg b/odoo_website_helpdesk_dashboard/static/description/assets/modules/6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a7a3264efd181ebe780e786f038915698d8f7dc7 GIT binary patch literal 88409 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 $9f$BCI=%~1 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/1.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/1.png new file mode 100644 index 0000000000000000000000000000000000000000..e9ebe7508eb6403c3613f98e6e6f1901ff675d58 GIT binary patch literal 104521 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 E2Z`EFi2wiq literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/2.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/2.png new file mode 100644 index 0000000000000000000000000000000000000000..9bfa129d87c75bcf2624139bc15c8f3cc4e4a899 GIT binary patch literal 38561 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/3.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/3.png new file mode 100644 index 0000000000000000000000000000000000000000..942a4cbfbfe8a483348642218fdf454e43abf1a0 GIT binary patch literal 108422 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

g7<15~!oP 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

P^8l+CW*>2FS|(+t9hznAF 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 uu+hga;GY~or&E4it~7;W@T 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 LC|)4;_T&EpC69?A literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/4.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/4.png new file mode 100644 index 0000000000000000000000000000000000000000..e7f7089db48e6b831eecdcac6560d6e9967b3b7e GIT binary patch literal 108513 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≠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 B< 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 Lh!wwn`{DlqFS^hs literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/6.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/6.png new file mode 100644 index 0000000000000000000000000000000000000000..ee01ec54d27593128c925d7c1bba24553dbfae8b GIT binary patch literal 112491 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/7.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/7.png new file mode 100644 index 0000000000000000000000000000000000000000..6c57bcedb5772d27353f70b268cc779e2cc411ba GIT binary patch literal 109718 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

Ujysy;bI467zGc$7=$EBHuZ& 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%0DZ}@9_vg*^u0Ubl` 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%0DdW&B|a#ZRFD6`qR?>^xzEy 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�+Ix&0K~167{_QVjMZS$dp$C-9h^Td+HI?hg^uR zAYIdG)1+1vd4Jcl!>J{zP@{R7$R4X5tQ#?RU(ZonV(}Joko$W|{UVX&N;mj=F>Ic? zX+21+r1a|j4M5;w33IhxRT6OaOSg)TdQg)km0SE#=x%KRr&()2n8DVEEnfCd0ZAb zb{<8KQ4I_h{*P=P29M)ETTxMA&v$uM81h415uu7T)?~VLy8(39&~1Q_sSIKrr8r*xgUPj(=p7vR$`zZw0koM zW5iu%4S7Z#ZLK=uPNG$k0n%#6TLuw>-=b2|YNgUrsn6(G`meqpZ!{Hkh*)-p80h$V ztgE;ya$WA9Mx+EYv%UVfBFe4w)77Ti6wmHKXn1sXugaKwQsI)FE+Pp~sP^;8FUq zR`d-nFO)V!d9<`!_$TQ@k8%&|Y*y;B+qRz#BKMj_L6CN2dCp&Fba$$ffcX6CTToKT6l@xGhVTBDcis zE^4)3*^V`~Zu+*PL{85=eB>kGtBUW9BnW~d(n?=AxGARIyah&EhPO({>6S!3Mjz)V=gN{E|1=x(b!QsxKHG@vn8+Y)kFzWG>+&6dLxgzLWTu zt*L=lbCLMmM|Sf6NESIM!3aMojUjxos9Hds$xOCC*-Km6bLysMJ4o75h3cm$GTKlYC&?bYZse=ArLW z3_1>SR!(@^{t<)oF=*DhM9Hkm3F$cySkQErO(N( zZAk+!z>xrOxhLDrcq_dtS&uOS9D>nC#8wZdW9;07V~&5+J7x;FZF@BTh~#vq$CP`j zu}0(L`LkR2vnx6bMJHuW{T*yfcUw!dF-@NOS)q=f!(&JC3V)OdAYOE~PB|XMDI-nm z#ob>h`qOv0y=zL`uQ%_11neCO8-Q8`FuO>ez6c0WOcy%A^FIz8MBc-i*I>rT^qzy^ zp+_;!rN6A4AS`P(bQ?^?-BfnIeNnyHz`XD8!Ji}Pjw7vKS0`D&`E0A+zX!}oDcl=x z_kv*=kH`zhn!5eQT=s+QPbS^S&r8R=KsiiWpJ^}5g!YvNvx@uP8$lNKywO`Ur%V(# zS5@I~__JqM4KG5BOGeiZ0F)LFDDhsUN1Jm2X)u4eF^X>yE?tBrzCdWUNzEp_>wDahsAA`V(3E-A0X`lJ^)nDg)&ROj%m26`cQnpO# zPx~a=plbqXIHWX3h$13*cgkpNr)nyO-n?<&n#e2lVU*&tGlo}DVOzQb{%2mEmUn39tVWPDT&qm5Q+6Mvs;K1B$$~^V8 z^0}`B@^Ph6pRCJ3ntR6p@~tbu$^m(etL)_Y4si^irUB*sRis5lXrl@PKc-`xICaFA zS(-W&sCI^DIo$mGysz99GEk(S1vypS&5A=pJf>QGqgHQVHsfw#&m!*#s>3;|tSa7a~>5wS4e4#NDrRQ4cEn2l4u7rns;W3V{J2LnS%6 zJjbip*jNyM<-ObZEAA zck+ziD%7*wv9fcBoX&R3lbXuX4pm;dt6eWK-1D@OOTs>yTdPe*pF5@8J|4?{i{r3x zy_kfI%v2L{Co=$G-1`BZSAgWdI$AOtghPhr7;O0tVhgG)Gv_^vC7zDcbttT`9)4)d zUF(H1;$A8W1gKmwm`l-_H9k>#nM_Y@K2_oE&>=q*{#?4pw&d%!wO=wluj#~(vlTe0 zbdJZgk$YnzvFHWd(gI;Mv52N7W;3gOI=$~nH4aaB;s7*(%s}6ZX8an#Tyav&7!kYX&S;~j5Z*WHPp zTWQu*6;?c5Y1X0SqHW~n6VG|o%%#%!rG*(%)bpAdRX&=?fA6Zs_MJoLuBgB6eIAH+ zkm+8>k+ELNVRZ}1h*Ias(zp`Ain#`e$M%uv60>6&LFHp-9|jJn{oOM%Zb{R%=`F_r z6;Mf+Yx4UpEswy61F(z$rT+oiX_HCo+L@6Ocd>IaRfD+c7;q_dD-Ftxx4N!}!539y^ghP<4o*q$l|SGiy!9TjaVDaFs`TEWeVNwAax8j1u1P6HBP)dt$ zMQi&43zfHTbLejDJXWY&(@X9AkhrBK;u@&|nF!PqYMNGthD7&FfYN08Do1VwlAdUg zWXZ(nVolIov_7M6LVMSR$jr5_AonkfzDTVpCpfZ|oarBH}idYZO5&+ZJF$;oJWD^y6(dp+#ayZN=v?W@>XwW+^FR5_~%92l#}a2w%s+ zn4&vUL}-51AzNg(^iwzj%gTAy6E>ZtBGZK(Ka3dby{xLd1RE`eee>%*pOa+>a0f(X ztD8SN+>Aj$ac{RLw``3K_+Aeg z!V1!1IC4tegWS1Tz+Mo996I_s{IqC)R;g)feVmAR_(xm`U|4K_%2 z+19l8;W8vxB7WXWjl3b~W$yjDYBQelgdx7C|Ac~gCAod^SQxDGZzr;=3XZK2GI~ZB z_!(+5m~dnF zbwmjG{KRol?^I5EU?hL2rRS0hmzDGUbys%X4>-#Dcn#^Z*GCG>_k7@iP%pt;a@-Qs zq@)-HrJGU%tGBL~J_nfVHw?72Qph{25yvfJFz^?{`sDOB-R#%u#mc{7-_3?}JDDk{ zWBFgI2g%TS4x~jKs5tiepB_qcgfu%OelFbDIL^q>-Ji?HflpN2Drb<9*HeGnqm@?v z%*36sNs%CR%)kJ(0~WN6)6(R{sYCDv3H8dRIz++JRYIuEE9c&cF_QewBNI=VMT6!m zNAZLK@qhpT92gfB&=X>EZz$B{-pvo%g`#B1aRQmtsP;V0)R9LSu>zilS$a$me0+^V z$E~WX*~v~`;uJbw`+DbVn@CJ9B{PKBJJsf@$!XXpLDJ*ruRFO=r`n zDTnHinrVkheKu+kl5wB$v`nR91UPHsW#$0Qijvn(Hx)0c3eB66XyT_Qg{CO^tjUZ| z0swdb8tLRVBS*vWKuor*CUd-g5s2jg0tiYW4=1vyXx<}G-Itx2Ddux&7}8D?EtEC7 z4!#cpJca;kAHb~&Q>p+QA^?((iMyClMErO7~zVhB)`3T|n7Mp6Gm_UxZr zfO$a6A}=R54xXl)Z+6O0R(ukjI}FN^mH4KIC;^KyuX>>F-h4#9*0D~(zpF`UB7h|9o@O8(pJFNgtrt+k; z?gr}0&^k-I3wHj4)#!)d8bEYh6w3wy}$J=HVcY%Gfbsxg-Wf3^;6odz9cl> z+gPb2Tpga10}yN37#Z7bD%njM&%wk{Ml-Om07d3CARGYvl~h6=+W@grS4)cr=q@12 zlrG|12e3DF3|~tZ{Z*uGD<}60fLb;IzHxx}x4rEo?Z;jr19;xR7y(c(4{0|*=mki= zY}9Dpg5QC7h1vz$1r76IET>1PChNgmKu{tG>jAnzNJz*t(^ekfR7% zTd>Vg&zaOAvIu7xT2UrCzv=;j`;U|bP5n*yx1%Q6H6V8ade}KQH~^e|l;Bp)O1d|| zVy$wRW~K%-E_m43^;ef?Xh_duqx!0{GW8DJUjhl0dw>4mYLj@ZOM4kkRmf9H4guapGa z(7hv_h^yfrcW-FS$Kn2+Sw0DHLIEiHSAr2hDdQE1Z4pI0L&VE-?{cjS0oe z6Oxjqq^CCm4B6x3V*rFcU5{%GaJuyLlHGd&R}x^0#t)5%*e@n0rJ&fHod|C~Lp3#d z9oQfS^M-9oYL`=R&#n7-amo2VBqfcNTdLrb2z%`V8k=c{>Z=TF6xBOG%Z?8KssX}# zSZL_ZjEMJPAu513wcCn&d)H zgc`gCmjDkQjDB+S&{$Ei=b~kMMmtZFC;GH*w}T}Zk7{ej1Ay=*vKujrYI)pw2qq3q zDRH%r5cNde#>6yWO$ZCa0&mvtAV&}?1G`e+XubFS_ZI;0cJ=cyKPKAxwu%jVKbo?| z@&Pvc+^af+yUud;(@efuku;D141uaQR50YpZeSu%fW%%rC5;5R6O^KtX_ff^d3rjW zqtOEZ#!~MBm^irJ4Tssriva}=*wdG9kG24mXoG1R?&){{F!uq#{M&c$-lebsy%z9J z)a>;L0^EB&KzyMwz>_Es4~vWhjF#J=+9+kVXAABbO^1KaJD={IV z_2*B(hhYYiasWp9{*_Dr{$J%~W$B*F$p8W#?0@}M+*<%8x;ur3ZyKsme{u7eWDls1 zVj2QoGJ;!;;%BiM#eM~6>{9jKeRF>4jT5`AM^e@9)tRLb&!4vg&USPO8Gz^bBpJ->+eHYL+OSq# z3Xl*0RN=2&?D%2;TDG`uEuU}JXK>C5m^&t~TL{%hGr|E_G@tJ`H1`3h8tWB4N*hFO z3?g~~U^HMu8%!6ydAXi8%$V~2q)lsl=?3Ara;qW4;aqChYXu?|t!tYDB6z(w*jb|L#Scwbr|s`*Bics^ zvZ&>ONcC)GW*-IKx=5JfVdGC~`3ZXMyLMsp*=_aRpY&~t!*l%bQC=4L+%w4ZHFNe( z&455(Uajy;ci1DBE0_jm?oTEd+W-Go0J^@ZLh9hR)Jp8hF4CtIxS~vJq#Kh-NWXX7 zw)#2G^^x8rML-}N8wI|eDTnsfh+*rolQ4~QEf#FOKFMxyrdB7g7RrL+LT&tu(;oJ7 zECtnqxCyXF0|La+$iw=@uf9J-`X>7b1CPX}NDuwI73feNB_3ScD*e)9YF6GlGnW#>>f46 zWsS!opizhAu2I70g#%CeJbg{#&&Oi+D9z$S6sflep4o~D9e2;f;eX(*d38Bjw(KR4 z3ytHgcC8Ya%7Wg3suLC`Nw+L)T@J&EBUTYmFrOGVX|JDz*G@8aGnzFve)N|dJiFpk z^DDQY!>E}Oa3>jdow05>K}j9+`at+#96D1uKuj9_JQIq;t9xlp4aV9g4CeB()+_>p zD#4R+xNmyo{7qYy^ggmDaoN`l$bsA3|MoTxU0zc6urmk$WtGjrBxUkJ!aEjNZhTZ& z5wlR9doft|yVefEf@kO0L5A)JR`8GD`;Wg=e$6l{JN?Dm1*WAgqC7Dgr@$>=$J^|5 z@%Wn|24e8)+)Y=EinE*q~&Jk)O@>z3Z1AniBPOY|P@ZE0!wUeG9CMT*_u;GR6f zI(cE9HC&$ZyaC)1Ib~hTY~i%F$)}`xEzEU)U(W|Sb4mJ(U5`bYL`8qT$1D>l1Uard zoDudntlP-4B!blAayp#;kKt={^ZKaZAar2}Dv&xTZ8t~V9+SXi_~|0VyCkHY{vI!W zxo0=I-x}#YEiVA3Er9o08Ya}1h6$9I<9$|Rkew|#(3IS>mlEPR_f#RbAo$T+ItT>) zJul@s>LT)pNNT1eg)E zzpKdD)gkC~ia$vleOo;}U7TyslteAgb&608h*Gw58_~~vT~8uot>Shv1qMT>{#8I> z^5<1Ex{rRM)jP|1*^-ihmHu~P3uZq^!3Vj2M?Cj)mTzT;yJTuGzWzC_9?Rp~I#ydQ z^PlSouCIGM5+3yak%Vh>h*{GUn48zyRt)BX*2OR`+(pduWLU16;@4O6xp&ryIV{(2 zwo!sU5)3tyERR&+^IGz3$FhMrLL15ID!@|4R_Wg*g1*kg0F#~n>27*Uq8eHPGmX&c zF#)*dRDEsdUB1ry4&xIhNLD{LoRiXM`3fR%$xD_E(@Ry}wdA%HV{W(10ieHte46Xa zqL$b2wN8c}#274f=FO`^lyC~#`A9Ba;W5K*V0l-0buf>9u}nXfM%%sMjRFC^Ylj@x zwpAcAr7^8-1p(ld)yC@FjaeY^TQ>JadA zb)=`Kma#%7;*i7U*C`^0DUn9Bin0IWXHmG}-;CC_!vWr5oDK~ye{|(Z#$UgeTh~Iu z*acY@+H^U3f9d#6(~lvWkNLwlrriU0e_%KvKR4t}HEZ@P`{r5jRk8?mcFCWK+5Ccr zuUAc{DV1$;X-fRUvY1_vlhurufe@xF;e3R&tbcNW>OeSPDf{o_y$69Z@a1d4Uu9+X zbIG=x|69)sM!xnfyH1+dh{WcVd7uL#v#z($bdZ`;M)ag@-PANfz74&#@wK3#ZZZk- zzH%yvX6kGYiaVbgkW^OF;MVFW|6KJVt>x4`D*GX@mE3%{srF*vmtNkVJ+Zp=9Ib=a zjt!h;T%2XlS)~`&>i1M!?KHv)?y}fkHD?Yw1=MZNpCE7j86)|%NJ6Kc)P-Hu z4sw|{o-cSYJ*`-XIs9cE$lJPaDoFV^?3er2lW|!@n^}a{a`fIuFKHGEbb9qQnoS>o z0FQwSiV7^AP^vqt$`n8F6(l$9B=_zbcY8z(>n~3y$w+uN>v{$^m7)71(8nCt21HM1 z`au2sIA#vY&U0Nx;FZlnKc2kj2N997%*bHr6^-9(-bzTGmQu;9osG!r(XMKuvyLzz z^KLH7OT!mBSyAIi}U5cLu8&FSJJ%#F*c;vEka8A1o<|uF|Ye2vi7^-B~ zN)N`D$Va+6{&;fH$-5&;>O(}ZwU^HXaT>CZs=uqQ79Ng2Sb^2mJ?31fv~ik0MWqARI_x3HIf?fa+G3c4vJm??3P6wcZR}mF82fTg=jg zH-lSZ9K1sBuXkvxUfy82ybQQkqi)<_e0XFx$0+@(Jc!|--Eq)rm6dlKKpdnP^&h<* zHK}`#=4Hcxq16-&vEO+$>;`-y!i$xSWsXe|UOMwBC+8Fz(ZPZ>@|vR>%MlkEt|Rz~ z$l`i>3yXaX2>Sf!<414L_djg>x_j7$;`K|(_H3rjYg;^zrp>YL6=E+g`@HzQb~6=^ zLg^sia!vFoc*bM%7}GLR9dZwSxhDFAd>oL>(XFZU2>-HG-;+m%y)*GI15*E+lR0Pub)9o*YaR>Tg%h4c7Oy-cPtaNgcP%f7^z_eA@=So=_5dTmLM=~I zX*T%;3?`GsiMB;csO%{%gUOLH$I0C1h;!9f%EP55Thh1Gek_i&Xa2-Lif}ofDG%~= zX){;hS3#nQm&LHJx3c1FX0A$RuHoYh6nCfM1AqM?iN5#B_i&l4!mvVzPny6hh!$NCrP;GnV{?xt8bCx~)Gemu-ahc_`Y?VWs|Vu-o7@u<{^M7Ql< z67ROkX0)z;^gic*Tyt3v{Ao{Mb7LppbTOs*la4Z#-%?kM8hzkEXuwv;wVDdo8^uKL z%20QocRjN%&lwRXBX z$$oJ}obnJGh<<4e2kK}ay4c_(8gkmLPh zMP&N2W%(_>a2i+T8GR7t!+0a4s?i|PJOCb6%koR-ayGm?mMf}Wl`6YhaXw}_-j z>f@3?s)8rD76kN>7hv(5i-FWNtHODK?~KpyKyo~}L+xceu`Qm-LubPw3%H9bsG`yy z{nk4b*eH|>ygcOI-!ri}p37}ez@e-dZ2xO&m2{l*ck3xc9VY8oERXUU=~pxtO2ZG@ zPOYL@U6`|jG~N5yKkuuAr8>~Uo({8X=$!({@!!4>cX;H zi}>)%yGdn^u(6U+Xq!onO`^4e>lD4p?(*QL2RUTv{f>*+gN3fXM0kNh(9H~9YmiG< zthK>DsH|gH%)1nv|3#RNGEgmpx5j-U^WBrYhSQ@+EeJ)xVaxyQb@QiP-i&*u8R|O$ z2rEvSs2W-qQ$C`}d$KIPWg1wq#5CbtxmGwpvcA$!49UVBQ#wg8K8b3-FlSc7#95^h zeGIp>ah}S2^SVFgHk{_~RsOF!ARNbv-nzMOWC-*>WA4_%^k)^;^jO=D8I%qV$Bs_l z@i6plHu9~EzsM0%v)qJN?hhp4q{!pz$lflmS86kydtY}A!{(rq%qu4c>_Ff3F&xD7U1ZRq}Hsm!>f2tODr-OZ-6l#hZzURTuQ z4Ebbrxt0CE$IlAGdEK@)-4F4OsAJYIj7cx2kEcezD&GuP#=!XT;`=4=Wua@#)AFuumX}AAT0| zNjOVM*!x{uTk^bj$^$Q%{WZezkGwnX=S+(ovU`6yKb#@k6cCanQkA!usl_xMO zz+3D}^^2-C z1piniN@7Q!3h366iMC#^oB6c@jQ%x%6TRhLH!%|QT3)xzd+5#Rx~bkqPx^IZ3`8GJ z*DdbaFu(rw|7*ASIcSoy>(;%n;}I9t*OI51A0=>Y`=I~(KE|qXJlR+nm`L5~DP!2fml|}#U z8iQ_l{NBjK*nAd|tIhGoa9j~j{qTgkC2+Ha{X0}u#pV{6@6Ky zt!D7Qz9n;G$>tCw4A5@#hy5v>=>|hP%R4yw}f|xvT%%0Ypur;+_tdO^O5J#J#leOPYR_1;6m0%3|g1!e%-TKnzAlG(5i5C$Rprj{&P|0qbp_Y z9vCkfDQW)bdVClr{#`6A&SXX4*|y{DtPLj{8Xx9$+~x&|s@E-3*|k_;-K59M@$>K+ zI`(o4Crue}@Ih-09jfd5*8^Rj0dji~7vd&GG2bjA@4iyxecA{Tg{-)N0~dUSUa{z; z{1Tgjdt&V06{q;r?_6aOegt_z|1nQn+6p+W-Mp1V$8d%Xn>rn;!85?n_t1Z;>}y#z zw*w~kmsvh=Eqa!I)z|3HH~4_YB>+vVoVy|IVCD`U-VvLn5qo0GtI~11>DsiSmQA-w zJ6=@B7bSn~!Co`i0_Lq-?}LLCj5v~y8wwlA)~{U-=q{j)SC>82$U!S^uzv1(H-ek{ zr-;hVwhxPNgR_|gtA8t=MguO8NSSPz?7Z@<1Dn%2f`8stv9tX0q5`eW;i)@VSi236 zlbYu~=jX3|&Uph$7W4bVs(38RMvlE2W(4cUua<0oR~BD;1kktbd+lQ&baj9;WK#)z z?BnB0&Y)~U4OH3PATTxXr?-uCeEJA{Hq_K8PJrn9cj7kNs}Xxmn>$aaA+R3zalO>; zkvDQTjBg+clzMVdk3pf{j6(3R*DW%?+KXGmwS*u|to0%OCnyNzgMgQGk##wbI}fSS z^XJdI9o*_+JeH||wGyOKIohuk6!n-D?MO;UkmCjqA|GaqYQoh$QC^PRVL&Yp*eX7~ zJd2M4Q*PNdNrzFPOJJ!nGIh|vnl$a;xB`8{;D|(7bo+Yfy=)L1@*GHUrWZA6LIxXo zlTCNKe@-DTcoQDT19_it-B*v>)djDJ3tEg<881It+ExMg?&!ucKyGz#m%LG{yi}-r z&~r+KC13O^M2Up+bV6FkLWbAJNw!Cn%HJ;=IkAHJh3hCWlBQ!J+&F%|chR>IY;xKi zLN8Q$5L_I5qF6gV(>F>5q9KFGeIuHz9WEy4c{8L*#zk<*)Y*C}LXmWKedj}@8Zhx_+Q#$vH;j*IE5Q-lvR|@IOdpq^YWwYeq z%q5PHC_yuqcfs<0e+#WSZSq$>%!;r2_P;(Ev^Hhf?=vYS3mB{%>lbMkY1bPT>uVKO zryX3BpxkDK|J@d&mi^V3z%J5nW#eY$(V*$Qbyi}>o_JiyaOson-cxuIp=Eg=A79~n zN>kH8kNbNIdr+!3dTwFt6}LRaP`{gz;@_l%Jn0890Y;ss*;P8h(B8>T8nAtp9$7L704Jr`-dd7hOLliOm?Sr3*b- zjQ!S{l-$lDTHFYZ36R5sGkPKR+?`}9&iqvnLR|CVt-q)^T7KR*026RBk4qpf>Q ze2!lK=dQ}>2Q%B7mSmUme&WiYLZEd&gP8lNOwgK?6f>{T(f%G;v;u1AVRK#@VXx?y z`I^~snt`&iGKT0!_nGLZM6SM-!RVgIk;ti6oLpdDx|@d1&Mc=b;R&7Y--s5u_~t?u zZV2~w-o<9du}-Gpid|TsUKcU^_38ZWD{sw-_Abi9w~h&-m05jPea^qp9T-K?(Yt8A z6?VMPxH?md32CT#T)iE)uSk(W^m3+t=Y)7PF=WgoLG*N_hgz<^D};}Cu1QW_3IhYX zP)VtkJRRnB{Tt1W_fFNFA(6i2M)55DK5!!2wn^Y`NIG1ke@TMcNN z1#e=DwPB-DYIC<^cFP8^@IQtmMH4SB5_Ry$Z0~a78=;P+B14`qJ=0%=TI=~{*T{$W zhDg!V28BPjdxcURH&FADp}m|kHFBHv=2<7J*&RI-(ViHaqgGNQ#Sd;aJ{yZFQx6X@ zou=|{=&2Vs6*ijNtD&cc7%t{aZ@I;3L8J&$<1&kcWhSjp55BKy?qQ8o7mD9tq5M|` zgS~YOU#U;eYl_>~Txd&m87=v!d4Wo!5UY?VEwDE#Yyd}}34TSFs1-P@{PM%qTYA{pDy zbNB^HEE1H7p+E_jBV@>NB<-C}zl%}j5% zCt$5yY|+Eo&97kMYRkF!nqS2Gj7i%WYxbmb(A%pcVEjliEp4|)bk9U@cY8F3&=XUN zkJi@5XIi$I^_ApyZ+FOlF9w~ z<|BuQYAT!a(-$_CbtBU<9QY%J>wzaxD2nkjtP%Znv9)Ag16!K)|7t6Z2XbIXc8py0 zF8TtodSG#W`TZ(6IsFwQM>`AS=b=`d=b|Oi+CRB>w!9rE5@}`ku)FY+xg32x9AZ&> z>K5!tiTEtC?hX?ghKAOWsh(}kqd9Hk(JMp~3!EiB^VJ{cQ;r6?oojC67Lhr3o1l7n zHePa!RdOAPy;r7jO(>_%QmEezt!FTo(%r2>v3`;IiSt~Jo7=;oN7ywo?NeF{oS2X4{^6%eV_F3?I| z{fnKOyTXFBjQd275;vR?qx5+T(|A0l354 zcJhu221Z6k<#d2wcI0Tk|DjFgM0HwxE=&$}@ZIn1TZX8C$>_wrgJ=^Yqs^jGG7tIY z=v`8f!h&ucF13b~(QR{1Lw5a0DAw{_RoCxaPTS51~kQhsmeKc)-n! zZcwb@;bHB9VKYuo)EX256rPUL5(A*S9vqb8Wc;ExrYamc2A{ikxODzsuL@B4_{o(K z<;!IIK%;q8%9zR=uzGNMo6_c3kr(9d&+gb77h2Hmw_PK*gZqdfe(!kL@uoUP0`Pf| z>G3e)p&0nVO{(M@U3IBALOT1Zbj+?QXf(kd>mQ>>%o8Y+QXq{52+Ft}&m>40Bec&3 zS5@fSH=k83qpt$+3?@t`$oIC-0J!F#HUX1|+q@`-qq2#@LA(}}$EQdDn%?|jo7C=B z{fbL&(n#YH#}~_mB}8d*S34BA!Q*y^u;nQy>B;Tvf3&#(&aahrN&*Gyc_7cMbE!H1O+qQw|&63T8jhwZ3;@<_@>V=iIZ#9tRmKoM_%nN| z>8NwPle{cf2n<|nQBD#m1JQ%?!<5U%H(){r<%MrhEW;_^J=OjrvWLUpTE6=Tip=U& z@Ywbz#K$8Kyspz~Bqb$%69vV*UHHj?{LDE4!p+p~Ws}bQ9<5n^93iQHY&z)8*(Gcn z-ct?{mX(AmYJmO^#KgD+SOH-5OGa%g^?|zGZ>2BbNl@t_LqxuP#-m|&t?y+uQg;x4C(>ZTx0ii zR;>Iu!+us-do4p?@|%N_DCFOTVD~|E}9V;dsG|g$1-%L{*ecTwFU3{Q5 z+cg4VU>)VN9B~i5A>dwClsW3O*Jlp?fVk2tDrRLOJPwJUG5 zoyFmKdNADNp*382S$OsMKq;wcukzmm1`>A#=8&Y)_&_QB04BX&f5~cZhke}ZQB;yv z^bw^2*jBXv@lgc04R1fxpQSG8e>+^AT*ULfs%NFF=1mi%*Qv<3a*nA2sPXHm3X`jg zde@|*uPjBUuKUDAa&KQs9YO8br`B`XpA8f`$q~Z1h14w{CxxU z2d#Y>22Mp=u1;SV7Ya;5mC__wR(QYQ#Fe`$f3mMB_}4msNN6zY`!})`UHSWFw5OD_ z4Sr)qPoTPv==znFZ{XQ=SoHeQpJx-=`xX!k*_CMZj|edzXueTI91M#Ytet)EAJjLo zp6qb`cWyCm<((HlSoSaak^=Mf)}3v^IX~K=Xqxs93Rv=YUYne6Vzh_hRX)D)udKbc zQTlW+JwH3lyFGQf+@;=LmF~YZVZ|^xPyF`Z*Fp7i^dMiWU!Gt>_$pmTw>$HMbW4kD z>*YF&WvW)pzoL${Z4$2SliPh-RdK*3Z?KZo=$>bL!2>^bINcoSHOc*FQR4cy^)ctG zL&OKeCr(>Y%PG!>r0MqzOiU;DcWnP%^M@Li(k!k#<<1Tlqd$uimaGgi`{yfr$~z9e z|JiH;zGzd3m0%{O&*RTKB!{{`t>%rYG?9X5J+pQS~E}EdTewv?sGtbNC%F(9A{IKRjzu(iO zmr|X~f4zF8YYqaCP+H#G9J<7seI~@w&?vcTG9HF*&AT34Ec7RIUpVbIut&;B-Hqel zX~gIx19bmCrF-|dNIEM2r?iJ#!T#UU2bd)Lv;USx%3k#UJ*|JGYPSEkW*>6mxgI>> zP%;67!6th9N!7au?uy3*5=PDwB0-xBgoJtJWFlJ;CEcY=*#58Dr1_%N`g;`?L0teV zC>7@LaQO5VaSU6E7U`hCi#p@NTDg$_m3w+imz5AYh17a2*U7aMlu^JD)EXv9Hd zTPXa1fJG(07~Q|mzvEuy*#4ctcwTz@$0fTV}xAe4oZlfn3Tt+9r&U@|=Z5a;e)MZIX8NCoRKN^Kd}S zuC`=@<(go>;4`b^LOjoptIi+I@5%7md+tiC@wb(W1kLv1{ z6*YU4d_gYtv`j<&WG)W2(()#MtYzn3>XgIOs|jPcnz0chv{B8N*5;>?qVnA9%90a# zlm68S4f%@)D#E|TinQi_)>z4ArH&|kR` zf$)$H{}}zY(+ZNU;3Y#@3inpR6w>!WA{BJBHsQMZ%Wi5A(#RV*Xmvcmm6N1Mg>@+x zFrut|%c!6{VXhina?X+y0-r~nVsV24sMt*peJ2pTKfP?;r!)%BpvxYlv=7c$*601R zgq9$Ul)pc>EO$?0neo#cUcWa~S4B73dd5Cb-V>d5i?wS$K0`DDFHW08~rHb%|R-Tv6lW~}%&BIdjd>3XtTwjS4f z4(OJnDS?myEMx4~PxCj#^OvM8T38ZO`;U_?KPX&%96U` z7z0rg^6~E*@Jq~y+F@H3YeNa#t#@^Gll57^f<9+kToK4hxX92C!)w&hUZxkZ{mt>` z@yBlpg)y;XjwmkK;eBJyCiT}>4`~wp#MfLp+eMo1IZ@txJ5=&|S?~SNB0Bu>PNA07 zBhxoNqj(ouCt+|z0kn3#f3cl(;BQ#ol&%j_Dl2fbw*DiqoSKr7lAQdSoE-FSw{`o= zukKO0hj?!a`7UiEGh|9td2zj%_%oI6#9Pi}A=h=x=&|6K-qWcuubx~1X&7ch4Y9q) zf@Er0wJ@bEPxwT=HNdcETN)dWl)DNeY?EYiWh>a{qznW1jC3J-=lebi+SKdodKhtp z#YR~)G)W9D4$jLT?$bNk$lD%C4e2KMELk711qEyE?n~i-Y@8ulTkO0KDvn{Nqj!zq*L>Klkj&anE4`4O$edE_ZZ$`ol7Yp^EB=lye$ z%z8^JmYAV;M_xIpJ2^Hu@8D&qBg1NPp6?s=&WRqABPLQ<|103oT0uFSMwZszt6ZNi zK|VEWvQZ$#V~wc&U2#gEEu+P{Q(Z#j-r1xYtv_(n_u}N+%i&)C4Zzw_ekO4K=%Lp~ zlOeuXeF`=pIuW#*O2$)z2LPD&Y;q$w5cYW-B{jH94L0iR{j{#wq3ggWse0~eP=q&o zVu?|r|GC}A9g9RNl#TYe6Kg{8u3m6t4RNU1NG(#+maqF42eufIk{!!KCnbd%BC(&Q z{D-3V?)`crqozLB%3ZVOIupqePVGNBT7K)+o}82rm%k{EUZPM@vy&Lx(5dAS@<1dV zg$ZGTys`q~G0_ zOb(tEF>bJ4UiG^r439I--@0ILk_4wPsSn(~{<0x5W!il=*4|LE_E`hKKnj2SPJD~U z>PxE~=!uqsYcWkeM~d?Yl8(HZt;0+@{YYQ0!q%pU z^Pj?nf?NMDI4vKinJ;hXWV9I-0L8i0{0P;!Htqj>L0$>fB&J%R_y6QxE8OAo3w1bjE9_!NV9T`shbg=8kVq zv6s-R5rLLRT4JCrU}AQvbyMbqLOTODirKD!!nutDS^~kx&+Ho%gX2-#*3uN}QKAgx z$w#hhWG?hxofba|#I$`PE2FOU=+elmZ0bE~snuTy`1F+*R7v1dUe>CF?t*D__F zudEi+jLv-|uZ%khhBUaYIB3qAqRtBBGvZ#8-eOLzgucH&id(+^gRfotTURSKA(_*= z1A{lYk;h;m27Nr5nGgn;b@TS9EnMZ%K!q?l%KzsE?U(ie}*W|FTz+0y|qGru77Ew{hf$558W+3{-e)F)x z%6EIMwWr^5x-^W~9a^IO1!{3J*CoaeC-~dXG1HcVb->rb8+rwZ?7}V$7v-dk1Xf%TDcA>dB+(0RE$S&U z#0g`Hj6LU5V$SXaR^R%&SnPw(*orKo?axd4X5B-Ju0?IWCsyPIDQOu(mY#4E>T*$r zF)uqT20s11eq(O?+qG|ZlwtK|?02x;72~=5N@C|)O!whY;8hO;&VjG;u&95rk)Vwo zhz;oaPbN26V*V&MRv}uM^4nVdE#?bg33}ZCl8v;gzVS)K86+Bp+sI4pf!tSv>=V>AEhIPAw4AwLW(o!aP4{Y?L1|_eqQc1h`wl|3#JKxrsNNeLS&c?9SID3><0Ns1jnX>z$Zr0Q-kHQve)4E9F zIETujYD-1^|8)!*F;MDjGr$r``pC~wCAn`Z$&ba?i?OJaJe7-g0jwR@POXX!=sWu^ ztZCvD>+QErOiUGv@Bt?_U#zo=pMP)oBQSmRkZafAIy`$rq>{?9NRE-$!^X{lBj$QU z`YE~0EHG1yLor-#BPxTZW5P6|@od&lL?f3)tAGVO4Gh?MaaAe0x!g(1S4E}T&fE}_;We<+bOdf_IhIJ32O<^Ai$Q z3|?E>pQO4k#_TN``D?%ux*V_FubS}!!HX%HD=*@mXzos41HoC)=#YiFBO{aDeL^@z zGf3D94DLBl7V~es+t+4YXfuZz|03L>wDzc_Aqxm-B(?fRc2H6%|@)YwaM&@ z6KgptRzmecVo-16*RlF)aWt-z%5HS|`B!5XbRru+R4D4UQ-u~NGeH)6!)RpbB7q5b zYiGgBcnwz@@S}F)h4Wsz&{;-m@Gz{gTUDEd2Ckdh-qfI|>3n%aEufOAS8IU{zdy_w z=1a0BRAJJV8g3sN`7CqGrZ*`zI)p)yb|OJ}C*}8dEWB zrZTlC@INZ$u)JG?vDEk&=rpfQr=50TCOyu*3>}g#CW*#ZKPeT};B(6Klb-g&!wajf;xXPOE=33&6RKh_6E9Gg6<89Wil=1OviF~|}jm~r;y!zg# z#3Y}(Ari|D?zdvi2L$OHoaH-<-TfxNmLd1{)m z#;+PY)2HqoBpL1TZ3KNKU(Y7;35W@2(Be<;R>9k0@tpakbb$1JCHqpP^VY4f+Q59F z*KXplt?eLkYWy^$f{#3hm(!@M!3&zTT$_-0@dfTrt>_)vy}BU8r1WPv6hkFyq^oH^ zp69A9lA4e0BMv_>1uQ>Ukrsz(01jfPSr!6{lW4L<;NRL!#H`C%{}<0CS9El(;Da~8vwaJfJSf6)5i1o zfj?v+_Tru&=VxO!G_B0E9A;AuI+EScZn6E_2}~`|0TZLDZ{6r=c@&p-A`HBr1%o(! z$FAD46akakQuP3h1d=L7+wP(jc^(f+LP9LWI8L{EEPh?RAkW+Wnp<*OHRW1;t++m3 zVQP($s>P&#L)mTIh$#QK;0?Y6AtC4_BrbK~)t*rc>yD0AUby4Bxc_)`R$xK(hti_B zq+bGrUbr~kYDTSfp<^TjhpR6U`Q2QGbxaHeAthq6!+Q1Bg?NO-^z1s7=#@MmAJ57h z<_s_FugtBP>$4h|(cW?a2eEjq=~mEzgu})>%K`}iAOs^Vn@-pC zES1S#ndWOCc+-$3bYw$4tP)m;**!n^XXcK}RvfQbSgKzJu!nJ7seMlfVB0 z;RB;T(8Ik2Z4GzBCV)TkLJ#5(g+Bg$NWG#Ia9xc_8?z1jUXP!#D!KWcz}1(#p!6RL z#XUm8nI8+kReAhu;YnIz^@Fw_0Dlr`&Z6B#HTR3+L%GB-1vLEyEi)n|x#7eTsDS29 zYZ6r?x1|ZXsB-sXxwsb1#LrkaW%-WN)Z?<&&)ptpAGp?gC$M^!rQ0v8r2r`_^mlbF zD5zjxeRQ;%lqvikCdl|T%iI|*Vr1yFZO734 z=4jnI_I2PyyIv|5hlL&8GAe!9-ZmU)sTA`!?&|EN;xR8NyR;i;oqi@^bUxyq3vTaqVq%a88}teN<%sV?WV&c}>p_E6PDdNr~t0dET>g zHcu9*qc!zk`iozUw-_gKJP#m)>^>BR6AKGF_+Blq&4>r#ad<~(RCr_yX?tCppM)?# zDSf&h&02JGgbldf!toSD&trkKM5wOo`pH0+EXNsVpqiOLiNWi=D_0%IJI&SZlomwt z$UX0vh&#r0!^t0S|S zZ9|WFqjdpSuW5EaCE!R97;%x2Rfzu4O?lbu-^-+LEKITA#z1ln*~!|B#b%nP9%o!PUDJEiR6^EM?uzYH%Eqo1?{fo>j2Gntv?2luY7 zO3pWExHE`_N|^3xOA;k83wgMXV}H(ZvHRB&go1&~pOpNkHPX-BF2~plmfoap%sNRk zO_nJRH%QYp*6L`Y^<&nA4|HgUzBX{X`U&O^S5&{XJ=R|+Cd%~xEn1GL7ScCfF%YAu z;!jk?0pI_SUX0L?2on~Gp;26*?_geN#<0yOq6@oXlct9 zCwUzyQShaEQULSy<@Mv~OzQOkx+d)U&!@nRAYNNu{}zs`hCD;Tw&)ADFLKWJr8+!b zd2buxMDyARRxP3OIf@aP6QvGEp3#OMh%UYDeEgHh!&B?tAnYM48-ugFkAvOa-97k8 z*b`{sO~-nOQgI~AsL`9Fu0C7FfQdu_4J}rD-asOsbNNID8~&R=8h=DwFT$dHaiW>0 zL_TlQ`u!|u+2R@kIknoz9%RdS7srtOi@>s`T24=!nh4g9A|5`?g>Jt`=go-GV1)g96pPM)+kg1S8*>r zLk2H2U{jekq(d1h&z|C+I~_lw^&Zzg_h_v~`b6JV(9qCAHZk0M89N7cJs;Oy=IT~) zykvCPkX66JfggRJ%3>H2o3F>~To(X0I;Z*hriXz=k>qM;oCAX(G3_j<28Y~Ig6CAVLJndKu&ZFJoAG>ZdPFoPB4A2q&^3m=5lPm49M}jdWIjN6- zpPn&3VT?QGzW4*qr%i+5ajEm6=BE2=-d4xk%{p3cYu&H9ZpUk=u_-T9-76TdgtRw| zb+p?}W~X6b#S+SNL+T#|(z5=F%TWf+X93~{vR`1BT%~<>R-Fm_}{Q+-mV}f3Hp@MiGojTE>VDU#i zD6J`4i9AV#UHQsoc=2Uy!Yd*O5n+EYDD8*lL#Nw9fy?sK;eydHPfIrht(6PR!7xn4%YdBUuFQm<>`Jn)`B z_dav#?d5oz&6&nYxkRfO>lo}BMLp)zxr@!jheI12T>d97)VEH zqoGQoP4narJ(Lf$MYo-dXrzWN8)fXu@|!el$J)m)bQRhCk}K0z^nl+E+h$e-RM-uB z>c8)YA8rs4a!V&2C-3&hA+yQrcv)MTquwm9adTQPWu1P^abao^@E;S*YA)**n3e3M z_{-<|>lsk0d$fw*pMNr~F#oMeM{d~xX6&-dfwi){kfzZw7;nWJ_wm)9S3`oi`cG}M z*}4AJA&~siH4o)Lzg5pVOTxtq;Q+f=>+6LS4~-k*wDq1{x<%ex%X42eBBx68u)kRt zxtKD&qe-i;4Gn~Ee^iUF5W7$xj3)0?BAa}U%+ToK9(0Rb+dOCOq?;}~;wJJRd&)f{ z(c|1;v;1A4^We8##|IQGG}sFA0Ib1z4>S`JeZy=mYioDbzA-@cJPlj1_DbYzLMpoF z>}<&oexlk9j~EuPP=6!G1_cYhEK08Yv*P=daOSUIWDT&xh4cv!w{oq*Dnsr*$of5* zsp{fXI>-9e0Cb(=;Wdq)vABE1d(+AHIKV1zn`W9+q1a>%&ABgg4RKTb`(j7~*qp9$ zQyL~BcXpatD&kgIB9uX|nqRA7gGd4(WO01=H9bYc-kmiZW$*DV#J$a02QVOqV0 zGgJcbAeDnFW`a+lj4HQ$nEznnXoG{BP*V%>A_fB4ua>1PrOS3c@Sm?%g)wua4n{>8 zGzfWbrf}uZ)!Ajf^UyiO9=v}2-l+NRG-F#c+q$I7Q4DoIm8UY>vYvwUfw(f?sC>M| zY`@fY-6$XA6(A%eoU+#&$Y?9Tbagu5FC@G;(L9--+7F0{7bhglL8YFJ6fn3&pAY}} zIV3pU;aXU?^WNwW!a6f<6gBXGzH7(GOa*%b9r3CROfi)tpGl`NS{AFVFnaa;o2z6<7a9&YTmhocsA# zueq{DWQcC{&*MlK|Fy9{hgoiS3CD5r3GFINdNRBihdf5b?_K|?^WWD-k1x}O>QGNq z^Ak)gU7IwOKGO+l>gEWd5H;q>wv%%hd!w41idO*(1=!ej5$k(zt< zmX>x8pbZ`BqFZ!|uYggW_fPcvoa-H!ZfmKM$>Sd}qgGKSI&`%L5*YmI#Fp!J2Uf=P-2q)%NbmXL(Xl)F2+>!I8%6*JDFk)3wGM+8qGE-9@_jATG zjKP%s?KfR9s=V3cx-P&b80e+$v03gj-BASNnQG=w$Q~ZvLklkA&y>Bu2HjXZHKRJX z0gmga>~qVYzStEO6clJdPp7@%dlFji*IiX?&^K%fuC$lTYhoWAqx1KW6x1!rWqPF~ zQ}T^4;X7L(OD33=)eXM%Sww!VF;7MY^MFZAOl*&IGMz)4Gu_b8kM}H8Y|i7V{CHN1x2>oZW zfsy^VYIkD=z!Ho&Q^pJj(w99=dL0%&DwC-f66LQ>d$n+uCbWh|!Y9vh#M7U~=GP*{ z=ELTbxcV}h%ty7BhnF9eH8jUHuuE$IQOwrsV@2WPRe4$qQCjBvD-K4fX$hq-y?@`0 zF2g$}tqZmj&h4Hy73Un#KE=W>?xAvYxAnl-JGr=K6G2FG&HI^Xi+lQ**M(uiJAxfj z+jGVO0`eH51 z+(m%;WL|>q)*f%xC~o&#g{V=4+E`1jtV%Qjp$8A34g!T%E?T4J>Kcr098(S!wBuTM zg`Ia@Zli=n!aM@1Hpi8{D>$V*@PAjHb7-b(%e!=rvn(kyLPra|D4+kJ5Js={O{Lk3 z97TT0**3RyW4$ma3PKJR7cUOU0UZ`zd1Gp8Jz413xUeqDA3s)H)n3)?wO>#(b`}g_ciLDBl_GSX4C9VrFigUiWw;F~)b-TFLumdR%WruGA4TeuJe+k7< zyI2fvJ#Ea;_Ky*>WoIjEK!6Gl#yFsG!)9FrS69Wuj?@G`p*J%er&EP|1NOQK`qW7g zRYBjr-6YIIk|ei>9P|o4>CmEl^M;NjE?BD7c%zq8Lu)4=-9>@;*0=gB*k`J^C&!-z+*+-Mrk#AcWnHKv|bDbaV2+gEna6t zo)d&Ev%19H?wZna4NVgf8FM6yEX0AmqX~BX-r61&Z1Bno^CX?gP$d%FK?5LQsA~t# z2^IC0--qzr`nfY6J;Wl*5DU+O3{ z(HJ+G*D+ygv^?Yo{;PeR7V(K}hvToD^C2mLPrBvWVMNXbNJ6#`zkT>XuigB=#jVP=!%v;5|ZvdG|Xt77hRMa^V=cgqJ8=3$JY#-?8wK&)A4EX6de~gE=vwGCr(d;eAdJ|%Ges1-<@ZCRJ z>5551Yb&L!W5YF!#&&%3*B>#3mVQ$(kc)zpU)p;36WhAEt%=FO1hO+$J=Ohcj=-`z z_q~53%k~%bqrs_3sm#kATMGDXGn*(0M9tav<~ccZFe}iqx1^ZS0vV_&cjsCjR{2B8 zm`vnXg8gLg&XkClnBrxpl7&AkhlLWQz5=9}v@8^nqIJTBxwIAH@F~os^q-OIKTOc)(^|C_Is?=Q zz@?T{QmMYktdW)2Ch7AuN0M~W#ZzUenZ!0CSCYKD+l-}pqPL-T5b@#N)1S$OU#TLA zJ_1$BaUl&%Sm6f$SHumiQ}JMP2u#wl(>y$^XXjLi&2+()A^V4B4wJ7oBgxdIeS;gQ z)^4oi8_~+K#pTTz6wKar3gv}p?;T#P0GHQOtF~g2R zr~J+=Bh;PQ_;H$2Skngkm07viv~Ux<%P7ob0RtDOG+Cn;qCoA%EG}+pp-bqLbR#?|VT6@fwWM6F{Qg42k(p=(D4Hbl$uy z1@Ndf1aGA}2BZ;QW}Knadjr^wDQA#~qAR`5Z*)w%cCa5O)Smz$A(Ve4QkqsG2IHh? z7sw_uhXwj& zg}F`jxxOdhHYGOm3LS-wVP+PN+uevk35U7qnc_$|HLO3E&e+9Q>X55r9le((+RS9H zBQh$B)yIQ{JtIjfi^9^{LBH2CZg_~vq`crJ_F{t1!O8&gAshSGQd){Yd*ylyf^XPh zA_Z~zpT94Lnte$Fc+JwzC^3fJ_LuT44(jtw(YfYxejR~@4ebN^WU8TMtCRjxF)>e3 z8y%WOf{BJ=I49QS41x_A5iQ2{$I@;Cf7&frTO!_ij(;BZk=Rshq7|o3I(AqqHv6MQ zl-RAdc3IyuBFOS)=C3Z9Cb2ZdFoT7NzxwrR%$9$=E*ossMeadzlebO+^`F<}*=K4e^blhjhT)lLI#?_*UR+kthSj(|29zL>xm@pHURE$3yc!W=soTA z{GmWOV-DQ$mi~T|t4WSyP2-NCt6x!#_07%J=#@Hmjsr%l9zNC$ z>f1g$jTmpS{M*lPZL9pbj-TXi=XIBE?Q42b1%7k{b1e{`_neGjQUC)Y@+{-e;LopW zth+AxQt7@&U-z)9ih4uJbcUTc+AU6FX zW$w@jj^K{i)R#oAyk&&ZYqn#Bl=h{Rl)Il6K2!>;^&x&V)&Bmhrf*d;yl;w>qtoVj zQa9x&=vWv z8!6%RTUh#?*Zk5$A`z5zC>XvKz2PN~j+H0??NIa&Pj<)SkXztM6)=u326GCUGgDGcJdqCb{=z&AZ9OhB+@+ z<@M-0lNsw0VjbH}f$!O)Uz%|bnjnW94^^_Q)yx^4cCQLB>qzwrJx?S}q^A~hznS8- zt??e+AU+$4x;yPc1CW`?XA0q^Hk;TGlZu7K7n5Tj$OQu6KEpAqIIAgT96mH`O!Ri6 ze;TNp#jcd>`(w-s{1=jRG}P`KvZbZ$3j`FrcHr{b;?tPL>qIw)nLiNm^3x+~^fw60 zos8pTW*;3NC-TNT&E%i?lRb{4%M_2hY%hCwp&haA5)3H{bFC|@`XlbNKbZi2EklKA zUmz+N(wZ;4GyGTAp?D7Be(pOccQUNAP1?2S>12Oq1 zGbx2VCSK68arxD2*s4(?!IZ#v@p5Zk9eX(xRX=dkyRz z68jqi(d3wg3qlE59FX5af+*R)!L+wF$0u9v+eXVY4=87V_O`p1ishYI87fya%0`La zzL>V$_>=j-aI!Z?N+K?W#rbN|6QhpfH;9}}!_R=@!0#4W#`MHn{u+s>qq9GynRpce z{M723mwtt+P=qaBOxJ1NkW|;nsCCb5teN=$4KI*qDW>V8E>jHO1i8!ePtm0&+r8_o zMd$f>s-Yppmov{i6l@*uJh727*Jy-!dJc2KI)GlBT!==Hrzn}mk26}9=Z%y+4{G^V zS90J4#%9erzIh5!Sj^DF3KOb!vEDvKM4;ijse*>TXT7vtzI$*M-xh{#9j zTy7o^yrau*?2s#)^ShblYvy$M8ZZ->=6)keTRguaad;KFEz*T*^tIA%Y3jS_Fo}*7 zkBdHyxN-HLc?7?MU@Dl82SZ`hpQ3&<(F!+DyK7FxF-cKW(HWB){Qkx4@;tiG;r7wg z!<#pAL8Xw6B7by3R_aFd8ETY0%KYVn$JoUdNBf!UHmV9g6}~WwyBdvMV}69g!Lai8 z3ZJe9P(#91p#%fj$@l#)o*f@#lmv7Q#3yG((i!RUdP||kPc#piyO!{=Yleh{SaogKTWh&7kn^nt=U{6&Il_>L(%oucu3pqiqgz0>+}#ixp7&aoRgs zJCrt$9IL-~2&NCn6x1CA)p9f0IJnqJW&xM(&21VI{i87MJd(068VmDqG?bcyw6})H zseE4f9K;YV(53Qo2g`BCIK$#%6Nkb;GlXkd=*}q>GwY;Q1pKe4ZeJoe9ZTJ@kzjw# z!JY`qd$-EW!KzfDTvgyE&KowLzeJs_n zTk+ov+v3d6UwQD9kPd1#FhGWNd(VT|XDusR*VWgk zL7dz2WE4UCOY5V+^*1O}*2xZb@+yZ1UXO;1D?Gwct4$a3jFUoI3Nu;abve$fGsh=k z@c{Q4Q)kmpnXZvRlQAkaB{fONWXM8;K@+}vtiC)CH16k7x{TR)m*)EpVFKXnSZ|-Q z>=4}!e|K?$Vj|dFxSN*IY%1JhZoIQ2udxr+$6ZRbDpzy#*bL7dZ*J0o``yxyOtKUB zV_qHh$)imCgXrs`Do9?$;Ht%4#KWKlamE69s*$Hu-|G|@T-af}l4WRkhl}E0ulW|= zfC>J){OS*V_AW&cg7*g8;ZFYY4Ds__e*W8n!sEoW=YxC5#u~`bp*qg&Oq7kNW2HQZhhxh&~>L*eTRQrc60qlLv7DFJsj# z7J-!LmHPM4KAH4z6Bo2A^3Zx0{YeI3zQJv|HM+~HIbnSi137b%UR#i0Xk22^F!O0 zw}iYbPQ8i#Fw1RkLZxSlgL-5rLfvFNeXL`j-X;d@oKs(WUuXwQW*jQbXR}mE;6dOASY-Mjds+!)hL**>rMeAsBW&51LxN?|8}xZj_w6Tz z-cRBbaGFQz7XON8A%jeNdV(B}#N<`(pw@YHNh2!EC;JQdkPc#8Gb1KHf?ENLZhuh*M%tr>?+<4{oRQ&*RG% z5y*k#xGzy77dyX7X2R(1Qf8JoLRG_3MY+<*Q!vH#RmpJYJ}Vtubv)}k5hA^gt-A3E{vFg$GwOl8FcpDqN zUgx{iJ<>H(se~*kVay(~OdK-2AuR8ao4>tAb1pCIluT-!`Z@pBDcLl9@IEvZEw_~T zFQBkBuOEJDLupgh&u@Anr<$c20We;7VcFp}_0A3FusoW`l+H1;3cg&LNHtAe7xWev zB%8cOiB}i@fX4NXWt7Sl4J$9@<6b1zTQ-LxCG-1mhKXc<>jgeMhhQu z9VLWq4ZlR79?XddPm&OOUg*X_%1OD{J1ato2_cb26mcS;{OHdzqDBO_>#AjUVlu?w z(nEw){EOF(I|PNJ&xjdeqMhO=Ew zubyS%_})|r=)Ctj&I@2!4%1?PbFF8&&Jke}BZ55!7k01ljgK*%lKMLA5ej-G`*^U0 zBHSyL;BfUsc2QyHjgW6lBwkxay&pGqnq`N*#Y8)-s$n_M+kwNSDmKfZmlS$h*!B67 z?bXMXdkQZ@o};T4Bpl^-(5k!?5tp=>B!L z_q_fKnyr3LuHsMsy$QT$e}=r`;$keY$@dXN&Vl!j{6C}*c@*7pC7W;1^lFXGk(*9Tfg>Au-Y9e!G{~oMH11u{Q5OH`uWK%Ljc(L9oO;T4FA7_lkR1NSF%aN z?dDv!qZK!5cO4j^*G|P+(7V`#Z!H;AF)}%-ESf(gi!`A7Wrn}Bpn{_N{nti#=W9|{ z!&Dr2qi(hAqFl)w3Z>ou6CilY0Jd1xwU%OsV%T^7r78cueog#R`@hBw{;|{j@6E3s z!8#=WE&Vd2`EPjNy?fT$;D5{RzbniVoBr=MyL1UY_L}UQYPGL`aJI5tJD^)dhF<5bqiN%i8ew zcv}O0?s~N6xV8VEktpE?&G|pmUXozo<*ho!Pv-dl9;bQl|17-o|8MpW`Ts8j%HC0O zZ0ZK(A$5)ZH`?*}4FOxHBnbW5KVSukzinm^*hhTHksP)`+1wgj9 zGTa{>nkstWol#kgCOyl5vJlEa6_Mil8xH6ul$U97abS4bAN_0>IX{7Df@`XqYugu^ zMnl9&25?Pj!v}$lDK%1&!#|5z>u3wM?r@KV1^?w|uJ`~sc4(}DBKxNnIl$U4&xKCW zhnhm2n_N9%;PYWve1Rl`(hdLm&pYsW?9{dD8MC;DIIEm8V9lH-d~1=izqkYLmm2FC z1nwC-j8Ufk4{sYW>)ZuQ|0n%26zjFqMO-LhYx4;SRjulVCr@0yNKDJdG;Orj+R@Uw zI2kvOt!5s2`nP3OiNrc;BIEhy(>?ncA94y%5kW64HMlh}}}VYDRj6<%fW z6J1TO!C>@bAJDNk{^4KABZF;+7xB|ij>-9w6n0YiSj}B36ggXHSbCV1<`Yb2`i0*1 zwD-%%`r`lhv3pM*uZ7 zp6;LX+WN(rNHB?fD;_{AAXJ+F_gl&0SvnqIkEEa&@VPjpSQ@+3Ee0?Rl}+o;d;oOR zdi7iNVhyQmbc128zh<6TdT1Hl<)C@4j?6G&8m$*GlCkw1b3pfUpCARGzlfew!)MyY z(a#LcKKBQGF6y73*6{eeg=>P#uDwgPuGaN61uXDvYroM9k9Bplb=tP-JBW$!9k37e z8C8`SY0wbyvfeS#SX&<|a{tC}P){_*TW)q?BJD??X-vttY0LC;d@7HJ3obzCy~n!O z!Q)=NHVKa{PEA9eUx<>EvT;!-2^fuYe`n^{tdn4i=-+`tElh*MPyT5rw)doIeZ>NF zi@`i%zf))b`dOmfPscf)>fUkpJl+>N~_N~ z_bVZxIS(U8l0X(R^Xz%lU4~QfVKP~tZ=wIfX^e2>b2tO8bXvth!QhUf26%MMX`S8J zM+Vp-8d56Ti3idrGuM1P6~Iw{9x#&qR6t@NJzsjM5lGf~z@#$Lb8ir;=u&l8@(v#=D>DuCOxIuQ zNhx4!2flW5ukk^&SW4x72-ompxi>kr%U4+BBtZaB^Mi11ZVM3kwPg zi)85js?;F>Iv6`%dSchkNK$zsx zFak&1z-eib>FQ$Sx12)=_eFYQnmL9E0he<$UwmQ zpB2tNaf*q9{O>x(Ui^n=51mwOYIh@>^3;#1fCQ>5#-U`JR>$5^XnaZ=i!R34JE@h4 zbgnh}NH3n5E;#RzhNPp8u@|>lZT*-I2EQ^r3Lc+<;Tx2z5wh$AT;BvPxt3={^IA++ zYLkYZli7dE&L*SPw})lF#bSwG+P|>cMgV7V95{Vx)#51>koBlWozvT0q?a#|#SPBk zFuhWWk&Uac zXZzQ^_)M{%On$OneKqP-&3a}qM~yGtMhhY;Mu;O_1OA0)U8mf-Gg|H-}o{q}X=_GSA4 z7^Y8mbyaoQsjlYQj!||Y=O88EweepZQB@_u|M<(o4(jP)pj!NrW4F=YTjVjkJ3MI} zU3iXStSpHnmxRk=gSGbit6*amw#B=N&nn#LpeVrwn}*kqZthb=uoOl1r+pMnXUOnf zB*%uW@X6MIOg??rhZ>)3|Gg1xfjBvXR_j0dRuKsC)jTQ=w|%Lu>EaF3qd6$V;sFQI zyQ(CJAM_IIw{Hrww>C*L#-;yjuXle;)D(QTgSo0XsmF_X56#TJRMOnL5SCT>ZjR2O zNj|^tCXvtG+@ss7VabzQnN@W_zaKU?Ikie|`#W&K(oN~drkNc$v!1+vWVDbqv8h)w z@+jWA281`nJ+Q*1@TUI0cZCLeDjR=Ua@Ol_tc?Gzna0U6VPK+i(_+O->}`nwO~p7Q zpEe__*Fm&dh;zj~QK*%&LZl!-U6~+|hHbZB4@pN?M=#OHcEP^Rj~4t+p~gU-SKu|> z%%f{p1fv_o?513w+w+8cu2&bcbavBn*^i2z`f-vm`l3`L1U*&Me?m#oU?#=GTP5eR zswZPqj%EE5E_>%jjty%(3iF>==8sl?>L2r&)0`VN7gfeU(e!;<@rYE~`TAn+M<1XL zQt8K658%-un5k8#$nDgcU>HOoX^*$n1#IsG-+e#=7JlUiEMk--8S+;hww!kHI zAt_Zpe&E_AgGh_>^{6wasWG@i0~K9ckC4n}{=7RYn)q%D_JjTQ0tjj3a~07W|DLSQ zH88gk#j05=@PZqW-A+}vQp=weqDvlF%1d{M*Z zw6SeRqT`&{CKAeZy?MCg>PpW}?{WMc>Uwr^$2*x#9aK zA(!j~c2VIZepa1U>i2n;B2kH~Y(oi#gEO^HJYu3_kE-Qn6}&pkInLlIrLwOjqDG&} zR&~|(8iuWdCbYzqiFx=BFN9MuK(2Bzop(AF1pyB?7YW6?)toC@?6tTRlY`$J;6HMa zj09rESIgRb4~{d!0Oj|2OCUbsOcHnNfds4jH}-P-yHEGA$n}G)^+l z7`FsV5ZLMk4Sg)JlN`lhteBkDGena6s?*<1LgH)F@N(9MZoK_q;#NL)OoV})m^g5noHxyu4ztpt&i0v*nB|P?R5n)ejsZmIZt=8OF zW!_g|g=w~E3%nBDAszn_yU6T;N4FsakEt16ZAg=M;#4V#Y|IUG_@PtF5NS| z`oAlt>!p|B^TUtGwy&J2<$JQD{i^G zQL+l*@Atclv_5t8p#0XFYyC`)nO!(v&EB%mub2yiplOOBUpKpXBL|n_m4=|= zl47=(W{WAF#kyWhr6X$HQTvT2V+nZBN~s)q^p~f;Trx@r)1;<_W851DA~jo6Z4bI2 z3}n8|jabsOgKHymfB6`*jT#a9ZXjR7#DwSr5@-{jVL0xOfVj+|eCB5Qux7ZEGw4?) z^i561Yr7S?xtK=0d3@tNX=R)KChN*_WFR^GpLY3yylz9=**3!L zi|xHfC(4UCzAKA$$%b5vEN*jSYUr)><-uk#5b#vrmeGDv zy#92|a(NoX=REog&^NU){=9oCR?Fo1YK5!(r@H$s7K?WGhRa$rlgxtL8ixCYQy&Ebs+ECU->6~g^G^U8t7Ao)(0pH_;|nmNQ`(`PnO z#3VKb$Yr)LkC^@DR9C%5oyIQ==qgAcqR|Gp>h5m;8&gVdp6(WR@Jz#Hq1!0g`~MWc zbYAdqP05WFE{iE=w4hv;AD^j(d!pTuc5VgJw#3+&se3+OGuOP3VckVnwP@cFJsq#+ z;exNwDwk=gYP!?LOk-JJ&D#70=MiN^qrp#|@^Nuz@AG?M3NPR5St*-aF3!yuo5TI) zk_q*A7MaC82(QYqPG@1+^j)2ZHJ|{dU{^Z_iw16Mt!*Q|!G04}Je|AgE!kd#fl}Pp zDyC)oe!QRj>O9tml18FzN~1~8^BE%D?dR_|YRZofCiK#BCP&(Bs_c|(l%g&f)IGf| z++FC7Cn0vQv5jOHfB!cl%S_E ze#lt{ej=sw-jjDoxvS8r{~uZtpvdMP&J>r2-3)x-kA&j+sJ!5&OQ?%y+2N2Qb0%=}5Jo9cX`i7=(-8j0g`_@3&-; z8UMqbE-w1r6kcOE#W7I|&NRAXx?wt*ewORoRC(1Gy<^ghPA1`16e2g$RUxj8W2-kE z8luWADwN>s;==asv}Q%NbQ}H&i9b7e8yK3m^j#YDx5bs$uWerODj+I(8zk=c*3>UF zXSW%B@}-R6NTgRP{+4PDy%e%B*5wrFE+p{Q_Iwy>jS+r$M;9mGICgA$4f~M4%JtAS z6g6TE`dWt3N(lpnz+X|SUQo6i&C#&zQqE>_Guh0Hz|1^pLjdzEF+&JUZO5ZUs!*@F zDAk%~t2Ehj`#9zj&PN(b`R2#YjKxGv^?Ig1xziiPr2OcZc$i;_RiXLGS||l^+R}vq zey#&aroCQjscyDQ-fQk$MrJ*2-DoWZB`?bblzXJE!8Dft#20U6t}GCzrir)rrE!1g z$jEGss5vWDWG0RJ#te_2mhx@msoH8io-8Rtf$ZYf>RUdC5y5ZeQ%UKse45b%5^W~8 z`$)LQ&A0d6E>SSm=`aXnZi21Oc& zw}x$0a!|39=u-u8FvGST%%A>TC!}HNBac*$+E-~LhN}n)k(%+3Hg7(}eRtk(`!PaG zcN^kuP(EZCB$YqiYo+#;KHq4?;oYZN?&jfmi`b0%>i|+TII8D#BYu?>F6ObvoZ;U2 zx~H$c<&qYbB6IsC-^`b>Lep3#w05uj{o)eXnI-U&oS&EgB_S|4%cEeYr!T4Q$c%lWWXNjPh|`ZfzMv zk)UXGyv(~unw|M?CxnGPNMpYMg<_JQ`RfcQn@Id8ousE}t63EPpHCG!Np$}WPGhaj z0)6!#=itrtujYU3 zh@;wS0#5pGjIbhu|JT4U|NqkgDEbsNo)q|@n!fj$6Bls=5%gpC0M ziYjA8{DrE%wIZRqoCVsT+`z>aK1f(Th#DZPb&t;fapaZifbmEJ2{63x#G`2vv7$72 zA+wonB(&x!Qd^b@KtbbY7eg!h2ousvv%kwl{J+Z$|7W?9Pvbh2^<^wR{x6{#bddLb zVhOsq_I9UKM1KLs`4?c_{@xBdzpDnSIYejDh1O%6g#RLa`LIajF=b z1VCF4OR$$i1#8w?EY^u%0iMvkJ$BCf{Ght$JY*+`n^1WvonP zZt`6`r}HJU>`I}7R77&_?=ysl>E@pg{6n+~%yAvkYcp^*ZUb+-aRC#K8w)#st#699 z;)$Zs-^DHeMM{yfo991sk=kTOB?=^)jf)!!8&^4VkwC`AV@qut*B~(t%PY7pa~wtv zLCuH%EbuLddAf}Ow*^42I1ka+=Bd@v)6^{=`|o;lSoZaZZoOL%L;^l4$wDalI-iFd z*=i2OO>LsL7wUcY#)ST*n<`N)1<4;rrtFw=V$-A|x!srlP$gy(k$aW_?#jZ-n3PO+ z?GUAss6cwdW4pZw;=(?2US74;TC4Ui^e;_kp#$MzV@4K{!0{1F4?YJE^3!;91-q8=-P-Tt zXG~L6eNx-&zr63}F3M-V9N+}}d7BQ%oTo2AR2dc{-qtD0awz}_7u;<7`Jjs62HuzZ zVus6PcB^kJvR+!-?$)Nhsuk-Z&cmq`PFsJV0Sn^0&tyuu5e%3f~|XPA^Ud~DU4TFyD>LP809TlSuX(}Q zS(4ZC@liSSl!K~xbzZYMzr_M#{b9Xx4o%$$u4t5*(S63$4erAc|)@?47_Wluh*}jM-^cXedM?TD6wA0VlIQD zTx`Zn6LuAXP`hwIXKpvNYhRci@wu?txZ_h93M>H4w?B%Grqen*>aw?k1=f;QMkQ6} zmJ64oR>&@_>q+0KqX%KGES{Q~xu3_gjw9SMoSaam+H-#a2j~2P2^&&^g;t`5JoITc z3$n(M2R-y;v&vo< z*`ddF6AnTjMtN}=;{Ao1t6j)iORlf%5yYnYg(@uQmj+8wMOnF+f5XN_^P~%J;@urn z@ItZe& zX6T)6yqh<=WZHvF30?wTmayAN@97c*-ay%=gA7M?;FSy!sj;oJvcX3unJAhrvfSCe zuaR(Y%2;o77!sU}2rc&l`KFTVW5E+<-7i!)^@@e{yw5^=6kNjR(RS859o|b%vq^LB zK|dHFElbYqHfnxW-O7Wx`VmA%oLohLli~E0`+}V9yqskH4Og0LHQoI0#-ybW2VERy z2}<5ycO5X-LM}cg9oC=QB0(PG8p_`z`wY!PXqLk>z8@Swf_k`~13YLT4Gbt!5roTOPLWg^`i!OP(2=>npKcCUohs$b7$^tGt1yB)oWwh1S=@5VkyaY zNC~6|q{EcwPX3`O0bS(6jJ#meT4p4IX6%z+oVuDO&D9x<@HNez&ZSvR{BxAZx&PZ? zT+NsKaF*FA^?uUc1l=UHJ;m8IwOE8TRDc2t^>g6UwQE(Tld99i&_8x=js$o6t1xrT zvY>`yX0CLK$07o@4Brb$6jZfhjnDOWi$ZVP6#+HnHB^~|hsKiISW;>eaDUVlvwEic zs2mn1#BQ2WFs9yXdHO9y&@MK*zT4F1G9D`v$J!ApZpWRQ^+40 zH?`?#_E0X(hF6bcE5!7Lc2eD=z{LZ$nPdfv-&!vRKik@+`>WDGVt#k<+Z2!RMW589 zH^UT1A|MOyQKGOm&ZM6Q+1Di%uuk#k0m|CNBj#5)Zg`T|Qc`c>@ghn}tnZ^PPuIB` z;|ILk_s#gt;J@tcEk2T7RRJ|#m-U@wMv7n6x|OrSVU}VDynYR8#Y==ty2T!I>ggF} z`#36_V-&JbLF^ANV4R)o*83^-t(Ti0;zyt8gLwhOZ0UQ~LY8rn3{7W8DOR}~YFds8 zvz>K-YClJ;93O}&D%^L5@A{45b)nH*$-!jyzVhSLVKh`JBYzxL$>)6_Cl4el($n|} zntgalsWPf~)Dg3N7`7_ryrU2^<59KH9Arb2hGKRb!di1xmca)`*sn^vj#ofVirR(O z$f+ER&D_qSDuArpmcXTvLeRISjZ!E>C093jvYsG@0AAOlAQ->?P3|b;QOR7?{8BMp@e=*vYa-LQ5OR6c`2i- zZVBr^Nmb2$#Xl$6Xuv_uFk0bPXirV(D=@Ep4vCYYOki zBtHlWT#ze6`GwL#WvKIbA#m`|Am&Udb>vf$tiem{yeK>ag4F6)FOm-pO|-sPQr2oF z_6gEy+MUq-CAr;m1gR@)-HF4v8*Y(f33sf= z3d;dtVyihJ(xC-?7HLQ>@@=uS*km4Fu?sE?jR|4x56}1j6t#CXVN;d$;1Sfxa(1h? z^8LktxUf4R2fpGg=0}rAqwG)09OK-lGyToe{Mjw|ZU5Fr0v=w{ZRex3bY=<_N)B~* z2PJzjmZ?oSE#9XFueMUA%K?{2-Bl$T2%DmoE@Br~uLNFt(Dcu9qoDf`JTjk_*%bWI zNqwFoULsWHOa?VT2E6=au@c&8s^!fPktAp>^P`}KkNsFb-4~7qGB!G!9^%G_fTmJQ z+>{N#_l|kg;GDIz9r;UO2qw=MKsxp775DIW@Cz`d7@X31)mA1%G1zfW<$48ktbxbdtiOWj2~Ajqz!4F4f&@TU_A z7sriL^3Gd_R<&vx?!|qa{?&nLL-8|HM8kI9QopTC-@?@mJ%BQ`Dtp2Q!rH(Kr~Ok< z;3WJkT3FF`&4qcng8^4x8 zgXP=7%r@^7IGF|P>rP(PRuKDaDTS=2DM(Mx3~o3Z#eTt>BJ8UE^pP(WYI8F}h;#Yz zQWjAA0`$;PMub9>&vvhq4MzA5ox;Gi&BJ(;Nk)NTMJ}bno0TbccL|R=y0y(}Myvg+ zpTml9OZn53>38$}=7m_VH+eL)yeD{$lR)>64d*G!TQ$xrcQlYJMYe0Vgv4{F3SMw> zcsq53xdFK_fZbr;v<&k(XXqi^Xnz?`oCyZa!>{)MAC=_vta8G5&H%e0en`WN3&_kG-mW`FA86#_I=@XKstae6v>k(GHu+{r=ew@-Q&g zw(->~)$z^dlRbgRvb8Oo7x%${yCuC{T+FiXybh)P3PguQR_kkw4ExPm&0abU#NP14 z69NKb@~@94eKoYBIKo$6!`S5i1^7Hok|hgm0S6UW8R_wbg%v3}rj7n`V?QX^a~3B0 z40PB){KqNu3J2e}>R;&{aF~XNJ#?uhU5aVUzA+Yzhz#@Qf@Of&rrJ>02Aceb{f_@m z^U0Jnc1D&HZH)3Quvi0lRC8F55!<5*aPXmfRQ4~X_M6CA_nl&hP9}6|AoM}Wp`96o z)o%0MDReYv|4v!YW{$`ni~=|!(j6`=&^r!|B$e0LI18Tp9xdc1YrqMg0(`hwj~pWv2UT>$T0`f3UP#owo%ejD@Hr~@kg zXM_Rf0GeU4UP25N4J7H??TrZhd1BaL)&M3mD0BobW9#=BSuOfsgaE7o;oGD$C!d3J znct{40X%vdYvMwAbTX4^btRV$A{rVwE|ts=*Jz8nMuIVNfai_l)$_NLaL|;?%d58N zP<)wIgulpRHD`r-x0jm*tVaTXzP4IuXYM{{>u14<6Sl+q%UD*DBi`h!KnRJ(nmlx( zhKxc{+Eq+sq;b>VOwXfoArqiT!3?JjdH<%lyb}%0ch4-L+0h+14`MWEFPF6R2I+kb z3lt8R$aL=5*82?Vmx4-h4KOgnzl$KLrHG$i7eSVmo>r(ak6p{HmzI8YOgtZfjCpX^ z@plh+#!3L-Ox#-Xf%FLfy0s9kc(_q?mXB4haBln0vEeHfzod_D@mT}b!1X_iRHrbR z^~zzN*k!drl9n!?;?bQwU*-@ik&xbqb6Ebcy@39g0AeNpR_f^}ErRj?BEsK-8Oj%+ z9o5(c5coVTUaX(x9)N}7UryLgxorOj&1ahDE>OU6edc8AL*yD=gvpg6>L+@-k1xMT*d+76;MGv)vJpD@tgg$01wxXjsFLUX2!I5TQ8f zp>Jy=UPLug(b0=FN;TX7&<}BUKk1#AC$(5UxiAtTcifmB8dwcj-*0dA6}OPII^F$l z5>OZOFrExVC)BRbdvR6DbgF5@#XFZPZZ?yRp4KU!Z!YJIV22UYz|A1{1|vXLr2YMN zd{3E^;>t~-9TaU}{FQlhdh-KZXU21KuG|;!y8g4r#2>x)_=Jz{O#H2D(=Y8l8&zE1 zRy@nBa;$gEWt~G829KAbs2u@`GAA|F-(X7+XHkNPZSQ<8ZotZC_M;4`HRg6(icS-y z9U)ib$!#V2+C!r0Wv<`TV1IC!-izP#gIjN180af{?}c?I)b^%{YNvB;=WA)N`oRET zHO&2?M#63f2p%Gjt60|i7e~>Pk(N@TroSOhp_~rCd(@yRt10^3^6rn=FC?+Q(?c|<|m+Ns`jNvUUR2jb|HHceO4&0|7TTxz~u_2u^_{HpXnz8@jZ=Onp zrojl8B2&w=qv=gr^Z|WecrD+D!jdPIje@6_ea@OE^}(4!C;-BU8g$N$3}N&JGc6qj zH<$uT?AAbqMtakN7!gtwEenXCmbA3VVN}42(3I4yzw;ZYxgv+&S>9g@X9sX|DJ>Idqkn_u``hLg zPkiEoe&Pxd0R>7?RDE2;w-`%|q7)f1nlou^_}Tn;>|DzUjex@mgg_vBd)6URIT}og zii(Z43pHlYB!|w&tDjincxn4ZbqQ+4=;-J#e*OAI6=5PF5vb3GO!XMw!s8H6#9>r? z@3kXdc_5s$+0vdf(R8ppx9-qFW3qCQ3Z)d#{f4!6*15z!LUMifRRzxXY@NV(wuu+k zfp{{RoQ+c3Z*bfDvmrKCp4?=;7~K+&UJCEgf}2f#A3Eh)h8um?YIf*v z1R^mBPmZi7)N#LP@`WS=Sj@+b^$)BP5AB}2dZFj)$=|7{6HD{9| z(cVMO$Td16L*n7q>RCZmqG;UNlE>mSCt9ypW7lOsCw>0t;D|0g&Kn%xj>cW|?UHIh zKrC4adLE$_@k!uSZ}_3>eLV?5X+^jW08R~|0t5FPNlcn7T@tv~Cvn>X7ir1i)PbBL zt4_p|qE-AtHtutD12^tZ`?c6RalZqqmPNK8Ps{JLbC10t;AT5nnU@z1?O?0qMASP=Ksw$bfQYi0U~xm9v91%04g zMJD^DDdo-2XwZ|xr0eeCxd+>V2g^P{o$Q+v*4=mQIY+UjMq$my<|i}pvaDdo3I&UR zta9Re1al)u2KVnm+ECEJ(34%yPY-}rVvfJv#>@3=2u2%dwf!#|rppso#4dO5htMjt zMwL|z9WO~&eScq5(k}?E{*`&!*DF59`2__?$jGrIynE>m9ZsTaI}^F_3@Y!Hlz^*G zs;jFb3E3-3N@~Q{p6-t;i;Lg9c?0h76%33OfAU;zaht3V^|?|?;h<(@v|Q`@JT7{j zu|U$JB6_Le>|CReukil8|9UikM#T*vTv39)Wn}2<>RQ8^oYrN7yFYRe$;ObqT#M#k z`L;5a$~|zX86~^k8;+X`f#9LaboxI&Jvu1LJx8*45OJGF)%pGUAz9gWHe3d-?dj?H zv%YTRdn&V=Qc_X^vu|bPp5j8oq+weZx^#@Um+sG%93a0;$YQ! zFN1K-`=&fVw9(#9*}%Z@R{6b^-ZwQ( zJ)`F<52NL~9tBvpAoO_)a|<1ZG;=}WjP=N z5#!9MxlWV2sX+n65VFMjZ^BnpNq#|x;3g^@%4ZxdIIMuM?GD*!xbDw4PaFkLKXX>n z(gLSnNQc68J-0{L$zc~rRWjo3VwarF2lhDIjt4cs$5H>9GhH?mX`0mw4n}ZVCIT^5 zd;#}1&;lcjY0+@u$>6_>>ayruTTK4uhx8ehY{q1T`NkCsM5LV3^vcFRNdGIfynr93 z(KBj096h%oEQl5n<=b0&iF}FNm$lhHTiQ|7APp1_4g=+-aBF3l=Z4+Cr*=q#tEi@D z5xSD^Pm`Y^MesoOFW*^Z4Qqc29V!NDnz&cLkwXhYSD~=~H>Pw&to~vw`z%z8~oHJuz3kZJsvti;9kp8pd=s6!$b|al_xAtL$8l5q_T~LQF`Q92dvw zakPYhj442_uA_6a9xF~jNGK;Kmz3O=8u%I)kz!+yFnG&yqXw@bQ7Y2V5Og=u~eM@OTM4N=!!9X8iMO zN=k}(XHa1&BVL4h;roy;UwQ`yvW48NCm=wDz6;zyptsxe(_?*oJxTNyuwk%7PP#l+ z{R%ahA|oRy{cnDk>ovmP>>EAbbt6+w&&^?x@VoW4pUa@2Mxf@2B%^_t2IsHk1Ft8T^&ZZ@*J+_3k)jni?P%DM_>wPTakbm-zPb z_?*a@v`v82hQ%nGk&SSmmty8>jS5wSjyGM&isWT0CO4_?1^3e}#vk7KHuT@!0-6ys z;#5NDx0R3+UVU-QMO5GB&fS~b=iZ5cKe5RORZ+UjC)oZz1kLRHt5L>&KMbPFV-dPq z+9@n#I3fWqcX-4CeW#(WeJXAA6pGNwJtO~8Qgwg}@_eG#Xb;|YfDarHLkv`LUoRqf zG;un^|0Hs_wb9HD^n3855L=0Udz-?CCsV3=BXrllwr`~R;p>BorKPmKz*VKxn4*pg zC5TKM4a7a^xMO9httWdn>18cH(x4a|wz!gKObgPO)=1XW%oOq2T21F4`~N5C#!)*W|LD=P1|m`O_OdI5_xte+@(@lkKt6d8}RqW@M0on6)dW_b(?W zjghe^UYy+RS0V`bKL`X8bDNV1xdQCTrr-4I>h$2?08m3<`gp&q1q)i)sFTf7uNKt6 zwzjsivND5K_hp~sb`aoBnBPx}UN5QZ>I&J+vVgF}9~{Bp1-Cf^WC;>>mU_qAvrQmf zg^8J2QCayipKjV(4LplA9){!g@>uj@F0UxXqhqycbFQFJ6DwnoFMV{o#C3vy+*-DZRbB zXmvh#0m_k-yy71aTfOWAHTxb;;(ta(EHib^-|m!p=D5{xikoJdo5I`|rV`}qXo84% zb!*0U+_$W(i4deL#;7A}RNZgij<)or92i*?gV0_rr6(-YJyciY8k30l8TtUyi9FQz5ODC-K5zUegO)yqSpFMhB;O^|hecWrtPj3^ztGrZcczQkxe;~_VC|~)Hd8r7E*Kj-@wE39WEz&&s{qBo`+=(v6zj8ol=jWuPq!wct#UB{?>=qN!((d|69p?G1ph>KnnwlOfUWGh+ zvxHd{kg46RvCLAfQeY_NnKbC|aE6$${gMC(xaAAfA4`cPk;Z2{mLUjwde{~>a$hie zzF&QQ5L00jbgJD*W>&?!_4#o`tw8?tJ6rp`m+L83Cm&sLU5sR%uFE*SHjM8*nKw=# zGh4^T>Z*V9UcASs`FZyCa?L|9zqa2QTcDsRL*1V}wPSU9m(|V#a$M~Xx@|y0AAk8n zAr*>RsVqj@$AaamC9&$${6ryvn7fyl8i!uHhl!N!weGMji@EaUy5sGrxmiYd-@C^2 zut7rleQN`Igfb62)L}rfDYavBS~J3f0HJxUWG7_)2T?h@-bi8NXJ1nhyWu?rOD-_!3Juf};c@6r5Z zjHBf__Y@`i!57`d3s#TFNB*bf_>>)whfmAb?N|D;N7c_u&pL`Q*~3_TguRiDyS-B8 z%C=X5-5;wkQZyM^B3Hz2)`GjclSmbZhDOobfwy9y1ciK9yZFNiLST0=GHfhhly~l( z107c?3oEPL_0clGLpN72hvU}cj;N@p=ZAqBRLSF&c0j!YrgZ!5`L;@iz(jK8)-F>l z;2Cd?rZXs~xy~7Q_+2l10Gc^xKY%LF!I&%6wlcrw4EQG@KK|th_xQnlwdp_%`Cr}r zaC`1&g%0Gyz+$7c_P(-_ik;0CW4(T6r7U~Z<`mJ`{fu-!J(-DeThr*z)<6DMC3yK%NEV&k9ZI_$=+=l(C za=1SB->T&WeZ5wMb8KikXxP>MJ8a*m2WtkWhlJF39&$T-)tsChNg?_6i6S+mj^#5p{b)mqH416db{wMG**|?W z7O!*vWHj9o3z@ljQUx*yK-JdJ`4x|V7lGIQF9JI_!&FTjUx9qxuo2CY;Ht9Fj}br? z%ucY^Wi1rU6@5KW4l2w`*&;ko7iwoCsdrTV?7f_$ISgkb7f-4Il(O zou_7WzQu3!4(;a(pI-wNN-nYiRs2xQM)r~i3-lA8V&qheJo%r^*IC{vtac++{s6`rW zBJFK+l~y#fbxG*8;zHe7HfgpeMHiv?^ZevjRkTbCAnB;M6cr2Wc&ZR9@W+oIiGaG) zt=~HW`0R34&$wJw!PJTlsJnsJS5m@s-%~1DuGRW!==&k85uxev3I>NxDMluttUNlI zuc%$Fd$}$C>^1ZqVB0bX#N_7WcRC>Dnw)3@**h$C=TFjXD!fj*kx5BN?AuOd=eo=7 zy;>rsZxGQ4MzVo}b2?b<##j-Nk(HfKcL0-zQu-4G77~*V8tGnXplnCx9Q|$%2|&ks zS>Jw0ne7Tq0MplcjYY`OY%60m-_^t^+9$dzH(Msq^Nf7r8zy2rHh3JY!%@FRA4uya&i=3 zr`AkLdW^*Na<6&~@quiPRcXJb)G}FGa z`uVB4$qZh}e8h_)&VzcxJ<691gy*cJgc!&PjjJOH@WsN226XDs_4;@G`E0bV!kn6? znmuoj&K>78TJ^6I@s?4<=Tiao7)dPZEs7VbU+?EYT}QZK z24B!9`Y#G|Dnk`M8>)JGanl_4oR}q18u<9D*UX8UBzdPrEv@g_6j)ZIyC2((&&ZZ>BbQZ5rtp60?;VGC{NMWwH?79%u;q)?OTj6fW zTk{~g7NCnbIIsS&-P-rAy|$7wbrj9$POg38W*!4A0WN~I^C-H*Sat-1n|4e2`6OT! zF2#GI57cpUJMbmlTy7-2f>rqXEIC_ttkw6X{hYAUAFivbcct8t)a?gbLUm3~^qV)A z!AP@tn3LDa_9*DChP^}bj*jbraF@lw)@sPR_t!QbikC)uBn_Yu_{<=Y%V~A%dLb?@ zE8JU5O zuKjA!26WW<{KQ<*1m9&ED_Wqz1O(t-k&}}H&*0#k{tl&t_XI3YT3XsrEJ`-zbPmTg ziF_83otjTWX2}Lud!>~PI|I&-mvaOC{V`;MXUiU| zZg$kSMPBuh04A996jS>lZ zZP=ps3uGzn$jJNLHY7Pzzz}6$4kG>uJ0>0N#G_=DRS-ePco#k(7s>go213y^er8(Y zCyx*PDA}^PCJ~a(&4^ItLuU`1wZ_)i!6E;eAOOM!!WJ1qp>40ChyyDrzS0xnP=}$u zZ6KI&YjS=)%VuAByx`{f+$v(4Rz}MX^Z1{}q zXs=K4*?HZrIxP&zbp59Lr~lKo-b!f4U%Meep?K+h5_V4i9s}!TdBqf#!k)UGLzVd2 zF6=lmGEBsO>*Am2w6NDI^YQ!lr1|I{G-hWnVpXChEI~@|NiQEV75~uCKub$sHq>hM?(WCSX_&kTHxsqB zG2%IN+!j!w*vys*0(+&_sC!B?iQUK_2=KoDsu84aYL8`n%*4rV{6b@Sks;62va%)E*qx!{?;Q2N-R;X;~1<2F* zh>m>u1thDlxKWplea48Bmk8$e6CeS^4P_Z4CZWE&>&W3z7K zlbOyw%p8#)KH)!7iSS(XgKIyz;|gqLh&}#f?|fH@xF4IZ*fi(*7Dyr&8X0t!pb!XV(ZI0Jf=hKSGLx@m`U;z)+<#rgL}Wt%}k zN5O!|y>sL6x0A*+iY- ziFx^fmiFp2m-+i{z<(}O$<9hjatBgrO$P~N_Mdo>h)A4A5Op6;ayWx-kU2o)b6kRebHUrqTY`R-}AE%ja}&_7FOeG77%1g!PeB#$(w^FD%3LlVu|3G zhDOU$vrLOvesuoyDev(VXnuFSnQQ`@;01Z$OvW^w>vR2L{5^xds6&mANbkKdef(`> z6mELQL$UB9LulBdI&edmFeAsw+37m2sVNYN`@9 zWzQLhl^VqtfP6Gr3QY}->7cj^b>@}Ly=W~{u$!p4C+A*vmnCK)xarE(qm z43W)k&dKTC)k{~RZ#S&eLRQWes}Fd7nyl#W@28cEIas``HLT=MAH9lPNEJMecC1ooy7)h;|-#*oXM zpOsi!M?i-gp3b1*Q-!qC_Ra#6r`?=D`r?$E>8yuy^FaxWJ~oxBPDP<7u~DgI=lgVw zJr2$#l>wvqsCiD!a7Lydq@rTXKKJ%|HK4MHF`e7uDi99Ac5^W>Fffv>#d2@@&BDS$ z;rq-QaTPN&GsBf#@8BppVHzRIW#3l__gpqsP9Z}-HNKK47cntnOJsKdeAS;V=GKt8 zC?`FgsHvqLiiEhZvR6_HH$5}wu-du$RJGXBg5CP_wRdX;2M$gqRx!QsTF=U)o@7^@ z%|N=+*6LN(&iq##95=oQkc&>r!vXm4di9yZZSNECelh~0RVwOx<7jPd?d#jNFL!sj z?{T&<6pV}o6rX*^Jpu%81Fn||+B@iZG^~mUl?&K3l7SkN`NGL&xITRsD)QeAlL@p% zuCK2}mj_8)hJNikWU;kp33&C&9XpvB(wv2;s7$!8ziDx|FgHxiqQE0Uq3SH!>D`^O z$GT@_uozC^ywXz`hDJh%7jwgF5}y&sJGJGtft;lp*k%Vf&Mo7I?QA6q8B^ncW>TTL_Prn>ReZ@Je-#F2aO=H#;lT1s^}#_ukIewGQA+#nj9B zV)bsOnLa{8#!J^o1;xgLg`e_iVS~c`W$a6{pXkivQze080vBB{UDOaFTwD?VhbBP9 z0IzJCDk>_fs;W9Vo<>r+Wpg>Hx=g*Ki#1AS_5i;c2u9cIW~QVReP9Gh|Ba&Cu~%~N z@m-Z=zs9*$Y-ELg{el!tWS6P|{b(t0qL`E%Od1{S6Yykrwn>Qa4QjT|fcfk{m33uF zhvVioS{eGQeTFppRz_x&BFX7u=eW5U$GSeJqobyvfSg2DdRZnm25k1jq^AsLFYKF9 z!;^c%TE>*2124Gt7N+9Q<&)AG88-MHD`G(+AGk!Gg@;GOn-mX^2T+Epco;};RaN7X zB@xsz`UeKEh&a0ZTV-=!VrntsT}DUSe_eQm!&?etyXCd-sRD)M@3c8w$K847UatqN z#91}4mrE@6(1*Ag+mJ)b|`}6+(3D5cIu$-N}YOa|xXRg;teAE8k z)#Nd1GDPC6c^+P!h243)mvt6p6B#+9wweIVFd4W1mfesa%KSDw+`!Oq5{vaaeF=JE zU|`^@SCwP9wzjr>=9H({=~f9cPuLua2lC-NpSt!3vzUV8{rG-cxq|Y~7w4}k4y2wk zKDMMx`@){kVX(et@S<^JUR&@+xt=?R7Ts{;QU3CBIbS1BKKsN3@lBF+0ZXOVmWyi- z75UUP;f*S~X&lkWlLv>7=A?n}$=87JkE>i`x3@jLwQBWkf4`odsMX%n{UDR-TQ--e zF-PEExmbVg9`xwU zV&uf4GbCVArmvc-w7Fe0^(IAi!g5N=M$x2DM%FF_6~0!nO^bH2J5-*eH@358=WdD5&V8X8(wJvRn{^>-%pzV>%Zvv#Y#B; zdUY#vV@AU??p(+`s+r;R>v;Q#IBhZNu;%2jRGMpY{i!X=go8lGRRm*SF*W-4@3m&0 z; zJmN>=i4SSmz^3SX%7WtJ-e7w8-{Ye$dy$~S3Bxoqzjct&i>R8x)G+As{0Q7Gm+O^f zXJ><)+11%OkS@q7B&2)lV_{+8;E*vgB@@w@w0or_yoCo6ZJFjDs_;>7%B-7H>ES~S zzd3$(E_Sr{U={xCyaTF>DD>VZ(%Ua0rt%aVya_kHH+7e{r3-K{Z>*UFux^2P3sw#KalcR>!dMf zpro`Gp}YG)wkhxo2Nv8E3P&OfjGjLyqob3u=}mq^aI@E1DCb!%e6r&5;;8lO*N36Z z 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 k~((=9b0sXnAwFu5Od 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/9.png b/odoo_website_helpdesk_dashboard/static/description/assets/screenshots/9.png new file mode 100644 index 0000000000000000000000000000000000000000..97db2a67b3c24157994edfc254f9f7b7581b98d4 GIT binary patch literal 108622 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�+$=JZ~u0HvU81(0=nEdj#Hgw!>M}vxGZb~klz6d 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%0A>gT~!c3@MzyQPp6G?z@QA4q? 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

44mn6~?P#L7a27z`LJ~s%uiSc8@oGCEf z%P^}$)~0UUIDf8NuhO_cd8HTYJZkkvAj9k}xOjxdFCES#C~Hccq{%9GU4`iPz8Sr0 z(oaobC+S<35g$_E1jsJ(ReU%l^%u)fnhH0iSa;;RA?D5YE4n7Eh;FR`tMO zs2_hg`mAC71c9Nvn_h_1nMwNRpkDLR%JI@lUR4iLUv9~{@|akT2q&`HSOUL@DpQHz1y50bc%2Sy==5)fQC8X-#;*iCB_Jqrzv7Hic zGVt}9#>~Z_JIYnN$DC}erfV-kOd+;&YA?M}kDCeNROfxxx?(#Jb1YV6Xcfb83itX0 zUqTCq#XKD23&mw z$~GrzsGsb{n=HjmBI&mGUkR_WpcwaNOnhaTUSw*WSnN#4y#9V5}r~9T@i7RZFZqX8ye+ z#m;=K$I`QQ@Tkq!Xs6(JwRNoESaqoJpnzi>lC*Ov$tHyBxWqLN;q1Hs1Cq`eXFZ+N zc`3b=%7JaJ>|8OmB+j>?CEfUOTT>vOG+7sh{x{|B*X zaC$m!UvTV0am8`lpH5Zhj+b<9ZB72rIm_EDt~p*dT|d+Cp?c}Vm2bzd4y2c=Aj(AN zR5J9TY5G<5(2C#nw`S=Ev%%#yp;g{aIl7_M2SN$kdmEHfD&y;_;y>1Erx*Httb-Ks z1|1VSkhNA^K~w1U&X3o7LK_A?HjITfPJe8i554j6W;GF5iv}yA!{BhZEMGzTBQ0)^T~cqav*H z+Hz-0*xgQ1FEXraV7Y57tYdp`DV=9LYirK+MYQ%+hSl+U(8ZY|iTJ&hl)}`s~jFZO{ts&=PIY8tu^{ZPF_3(lTw+ iI_=X!ZPZHb)KYELTJ63y?E?t}1OPj(D-pN= literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/banner.jpg b/odoo_website_helpdesk_dashboard/static/description/banner.jpg new file mode 100644 index 0000000000000000000000000000000000000000..458b4f30cb1fcd27e45473e2933a4aba4dddae76 GIT binary patch literal 91169 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

#*5h}(a_IhEa32%4y|k46>46TvaNG@ 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 literal 0 HcmV?d00001 diff --git a/odoo_website_helpdesk_dashboard/static/description/index.html b/odoo_website_helpdesk_dashboard/static/description/index.html new file mode 100644 index 000000000..a62b3bd8c --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/description/index.html @@ -0,0 +1,797 @@ + + + + + + + Website HelpDesk Dashboard + + + + + + + + +

+ + + + + + diff --git a/odoo_website_helpdesk_dashboard/static/src/css/dashboard.css b/odoo_website_helpdesk_dashboard/static/src/css/dashboard.css new file mode 100644 index 000000000..7d0f5f06e --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/src/css/dashboard.css @@ -0,0 +1,267 @@ + +.o_action_manager { + overflow: auto !important; +} + +.help_dashboards { + padding-top: 10px; + background-color: #f8faff !important; +} + +.dashboard_card h4 { + font-size: 1.1rem; +} + +.main-section { + margin-left: 6px; +} + +.breadcrumbs { + margin-top: 0; +} + +/* Widget One +---------------------------*/ +.stat-content { + display: inline-block; + width: 66%; +} + +.stat-icon { + display: inline-block; +} + +.stat-widget-one .stat-icon { + vertical-align: top; + margin: auto; + width: 100%; + color: #01c490; +} + +.stat-widget-one .stat-icon i { + font-size: 30px; + font-weight: 900; + display: inline-block; + color: #01c490; +} + +.stat-widget-one .stat-text { + font-size: 11px; + color: #868e96; + font-weight: bold; +} + +.stat-widget-one .stat-digit { + font-size: 24px; + color: #02448b; +} + +.stat-count { + font-size: 20px; + text-align: center; + color: #00438b; +} + +.stat-title { + font-size: 17px; + text-align: center; + color: #00438b; +} + +/*=====================Dashboard===========================*/ + +.dashboard_card { + padding: 0px; + margin-bottom: 1.5rem; + border-radius: 0px; + box-shadow: none; + background: none; + transition: transform 0.2s ease, box-shadow 0.2s ease; + will-change: transform, box-shadow; +} + +.dashboard_card:hover { + transform: translateY(-2px) translateZ(0) !important; + box-shadow: 0 10px 10px 0 rgba(62, 57, 107, 0.12), 0 0 0 transparent !important; +} + +.helpdesk { + margin-top: 3%; + margin-bottom: 2%; +} + +.helpdesk .stat-icon { + border-radius: 15px 0 0 15px; + width: 30%; + height: 100px; + text-align: center; + padding-top: 11%; + background: #4a5c9a; + color: #fff; +} + +#team_ico { + -webkit-text-stroke: 1px #8e8e8e; +} + +.helpdesk .dashboard_card { + border-radius: 15px; + transition: transform 0.2s ease, box-shadow 0.2s ease; + will-change: transform, box-shadow; + box-shadow: 0 10px 40px 0 rgba(62, 57, 107, 0.07), + 0 2px 9px 0 rgba(62, 57, 107, 0.06); +} + +.stat-widget-one .stat-text { + font-size: 14px; + color: #314384ff; + margin: 2rem 0rem 1rem 0rem; + text-align: center; +} + +.stat-widget-one .stat-digit { + font-size: 20px; + font-weight: bolder; + padding: 1px 10px 2px 0; + color: #8061a9; + text-shadow: 0px 0px 20px #000000; + text-align: center; +} + +.stat-widget-one .stat-icon i { + font-size: 25px; + font-weight: 900; + display: inline-block; + color: #fff; +} + +.stat-widget-one { + border-radius: 15px; + background-color: white; + text-align: inherit !important; +} + +.stat-widget-one { + width: 100%; +} + + +.inbox_tickets .stat-widget-one .stat-text { + color: #706F8E; +} + +.inbox_tickets .stat-icon { + background: #706F8E !important; +} + +.inprogress_tickets .stat-widget-one .stat-text { + color: #9AA8A8; +} + +.inprogress_tickets .stat-icon { + background: #9AA8A8 !important; +} + +.done_tickets .stat-icon { + background: #847A9F !important; +} + +.done_tickets .stat-widget-one .stat-text { + color: #847A9F; +} + +.team_card .stat-icon { + background: #66719a !important; +} + +.team_card .stat-widget-one .stat-text { + color: #66719a; +} + +.dashboard_card-body { + display: flex; + justify-content: space-between; + align-items: center; +} + +.pending_detail { + width: 75%; + padding: 0 0 0 40px; + margin: 0 0 0 4px; +} + +.ticket_box { + height: 32rem; + overflow-y: auto; +} + +.ticket_box_head { + text-align: center; + padding: 12px 0; + color: rgb(73 80 87 / 76%); + font-weight: bold; + font-size: 20px; + background: #b1cccc; + margin-bottom: 9px; +} + +.tickets_head { + margin-left: 10px; +} + +.pending_tickets { + padding-left: 0 ! important; +} + +.tickets_list { + font-weight: 500; + font-size: 14px; + margin: 10px; + list-style-type: none; + border-radius: 5px; + border: 1px solid rgba(69, 72, 103, 0.71); + background: #f3f3f3bd; + padding: 10px !important; +} + +.half_chart.chart-container.card-shadow { + height: 32rem; +} +.chart-container.card-shadow { + height: 32rem; +} +.row { + /* Define your styles here */ + font-weight: bold; + margin-bottom: 20px; + /* Add more styles as needed */ + transition: background-color 0.3s ease-in-out; +} +.td{ +width:20%; +padding:15px; + transition: background-color 0.3s ease-in-out; /* Add a transition for background-color */ + +} +.td:hover { + background-color: #e0e0e0; /* Change the background color on hover */ +} +.custom-tr{ +width:10%; + +} +.custom-tr:hover { + background-color: #ff8080; /* Change the background color on hover */ + color: white; /* Change the text color on hover */ + font-size: 18px; /* Change the font size on hover */ + font-weight: normal; /* Change the font weight on hover */ + border: 2px solid #ff8080; /* Add a border on hover */ + /* Add more hover styles as needed */ +} +.user-image{ + width: 10%; + height: auto; /* Let the height adjust proportionally to maintain aspect ratio */ + border-radius: 50%; /* This will create a circular shape */ + display: block; /* Ensures it's a block element for proper centering */ + margin: 0 auto; /* Centers the circular image horizontally */ +} diff --git a/odoo_website_helpdesk_dashboard/static/src/js/dashboard_view.js b/odoo_website_helpdesk_dashboard/static/src/js/dashboard_view.js new file mode 100644 index 000000000..264b57bc9 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/src/js/dashboard_view.js @@ -0,0 +1,290 @@ +/** @odoo-module **/ +import { registry } from "@web/core/registry"; +import { jsonrpc } from "@web/core/network/rpc_service"; +import { _t } from "@web/core/l10n/translation"; +import { Component } from "@odoo/owl"; +import { onMounted, useRef } from "@odoo/owl"; +import { useService } from "@web/core/utils/hooks"; +/** Initializes the HelpDeskDashBoard component**/ +class HelpDeskDashBoard extends Component{ + /**Set up function**/ + setup() { + super.setup(); + var self = this; + this.ref = useRef("helpDeskDashboard") + this.rpc = useService("rpc"); + this.actionService = useService("action"); + onMounted(this.onMounted); + } + /**Function for onMounted**/ + onMounted(){ + this.render_dashboards(); + this.render_graphs(); + } + /**To render the charts**/ + render_graphs() { + var self = this; + self.render_tickets_month_graph(); + self.render_team_ticket_count_graph(); + } + /**Doughnut chart: TICKET STATUS**/ + render_tickets_month_graph() { + var self = this; + var ctx = this.ref.el.querySelector('#ticket_month') + jsonrpc('/web/dataset/call_kw/ticket.helpdesk/get_tickets_count', { + model: "ticket.helpdesk", + method: "get_tickets_view", + args: [], + kwargs: {}, + }).then(function (values) { + var data = { + labels: ['New', 'In Progress', 'Solved'], + datasets: [{ + data: [values.inbox_count, values.progress_count, values.done_count], + backgroundColor: [ + "#665191", + "#ff7c43", + "#ffa600" + ], + borderColor: [ + "#003f5c", + "#2f4b7c", + "#f95d6a" + ], + borderWidth: 1 + }] + }; + /** Options **/ + var options = { + responsive: true, + title: false, + legend: { + display: true, + position: "right", + labels: { + fontColor: "#333", + fontSize: 16 + } + }, + scales: { + yAxes: [{ + gridLines: { + color: "rgba(0, 0, 0, 0)", + display: false, + }, + ticks: { + min: 0, + display: false, + } + }] + } + }; + /** Create Chart class object **/ + var chart = new Chart(ctx, { + type: "doughnut", + data: data, + options: options + }); + }); + } + /** Bar chart: Team - Tickets Count Ratio **/ + render_team_ticket_count_graph() { + var self = this + var ctx = this.ref.el.querySelector('.team_ticket_count'); + jsonrpc('/web/dataset/call_kw/ticket.helpdesk/get_tickets_count', { + model: "ticket.helpdesk", + method: "get_team_ticket_count_pie", + args: [], + kwargs: {}, + }).then(function (arrays) { + var data = { + labels: arrays[1], + datasets: [{ + label: "", + data: arrays[0], + backgroundColor: [ + 'rgba(255, 99, 132, 0.2)', + 'rgba(255, 159, 64, 0.2)', + 'rgba(255, 205, 86, 0.2)', + 'rgba(75, 192, 192, 0.2)', + 'rgba(54, 162, 235, 0.2)', + 'rgba(153, rpc102, 255, 0.2)', + 'rgba(201, 203, 207, 0.2)' + ], + borderColor: ['rgb(255, 99, 132)', + 'rgb(255, 159, 64)', + 'rgb(255, 205, 86)', + 'rgb(75, 192, 192)', + 'rgb(54, 162, 235)', + 'rgb(153, 102, 255)', + 'rgb(201, 203, 207)' + ], + borderWidth: 1 + },] + }; + /** Options **/ + var options = { + responsive: true, + title: false, + maintainAspectRatio: true, + legend: { + display: false + }, + scales: { + yAxes: [{ + display: true, + ticks: { + beginAtZero: true, + steps: 10, + stepValue: 5, + // max: 100 + } + }] + } + }; + /** Create Chart class object **/ + var chart = new Chart(ctx, { + type: "bar", + data: data, + options: options + }); + }); + } + /** List view of tickets in dashboard **/ + render_dashboards() { + var self = this; + jsonrpc('/web/dataset/call_kw/ticket.helpdesk/get_tickets_count', { + model: 'ticket.helpdesk', + method: 'get_tickets_count', + args: [], + kwargs: {}, + }).then(function(result) { + var inbox_count_span = document.createElement("span"); + inbox_count_span.textContent = result.inbox_count + self.ref.el.querySelector('#inbox_count').appendChild(inbox_count_span); + var progress_count_span = document.createElement("span"); + progress_count_span.textContent = result.progress_count + self.ref.el.querySelector('#inprogress_count').appendChild(progress_count_span); + var done_count_span = document.createElement("span"); + done_count_span.textContent = result.done_count + self.ref.el.querySelector('#done_count').appendChild(done_count_span); + var team_count_span = document.createElement("span"); + team_count_span.textContent = result.team_count + self.ref.el.querySelector('#team_count').appendChild(team_count_span); + var priorityCounts = { + very_low: result.very_low_count1, + low: result.low_count1, + normal: result.normal_count1, + high: result.high_count1, + very_high : result.very_high_count1 + }; + /**Loop through the priorities and create progress bars**/ + for (var priority in priorityCounts) { + var progressBarWidth = priorityCounts[priority] + "%"; + var progressBar = $("
").css("width", progressBarWidth); + var progressBarContainer = $("
").append(progressBar); + var progressValue = $("
").text(priorityCounts[priority] + "%"); + // Append the progress bar container to elements with class corresponding to the priority + $("." + priority + "_count").append(progressBarContainer); + $("." + priority + "_count .progress-value").append(progressValue); + } + var tbody = $(".ticket-details"); + var ticket_details = result.ticket_details; + for (var i = 0; i < ticket_details.length; i++) { + /** Get the current ticket object **/ + var ticket = ticket_details[i]; + var row = $(""); + /** Assuming you have the Base64-encoded image data in a + variable called ticket.assigned_image **/ + var base64Image = ticket.assigned_image; + var assignedUserCell = $(""); + var imgElement = $(""); + /** Set the image source **/ + imgElement.attr("src", "data:image/png;base64," + base64Image); + /** Set an alt attribute for accessibility **/ + imgElement.attr("alt", "User Image"); + /** Add the 'oe-avatar' class to the element **/ + imgElement.addClass("user-image"); + /** Append the img element to the assignedUserCell **/ + assignedUserCell.append(imgElement); + /** Append the assignedUserCell to the row **/ + row.append(assignedUserCell); + row.append("" + ticket.customer_name + ""); + row.append("" + ticket.ticket_name + ""); + row.append(assignedUserCell); + row.append("" + ticket.assigned_to + ""); + row.append("" + ticket.subject + ""); + row.append("" + ticket.priority + ""); + tbody.append(row); + } + $(".response").append(result.response); + self.rpc('/help/tickets', {}).then((values) => { + $('.pending_tickets').append(values); + }); + }); + } + /** To show new tickets **/ + tickets_inbox(ev) { + var self = this; + ev.stopPropagation(); + ev.preventDefault(); + self.actionService.doAction({ + name: _t("Inbox"), + type: 'ir.actions.act_window', + res_model: 'ticket.helpdesk', + view_mode: 'tree,form', + views: [[false, 'list'], [false, 'form']], + domain: [['stage_id.name', 'in', ['Inbox', 'Draft']]], + context: {default_stage_id_name: 'Draft'}, + target: 'current' + }); + } + /** To show in progress tickets **/ + tickets_inprogress(ev) { + var self = this; + ev.stopPropagation(); + ev.preventDefault(); + self.actionService.doAction({ + name: _t("In Progress"), + type: 'ir.actions.act_window', + res_model: 'ticket.helpdesk', + view_mode: 'tree,form', + views: [[false, 'list'], [false, 'form']], + domain: [['stage_id.name', '=', 'In Progress']], + context: {create: false}, + target: 'current' + }); + } + /** To show done tickets **/ + tickets_done(ev) { + var self = this; + ev.stopPropagation(); + ev.preventDefault(); + self.actionService.doAction({ + name: _t("Done"), + type: 'ir.actions.act_window', + res_model: 'ticket.helpdesk', + view_mode: 'tree,form', + views: [[false, 'list'], [false, 'form']], + domain: [['stage_id.name', '=', 'Done']], + context: {create: false}, + target: 'current' + }); + } + /** To show the helpdesk teams**/ + helpdesk_teams(ev) { + var self = this; + ev.stopPropagation(); + ev.preventDefault(); + self.actionService.doAction({ + name: _t("Teams"), + type: 'ir.actions.act_window', + res_model: 'team.helpdesk', + view_mode: 'tree,form', + views: [[false, 'list'], [false, 'form']], + target: 'current' + }); + } +} +HelpDeskDashBoard.template = 'DashBoardHelpDesk' +registry.category("actions").add("helpdesk_dashboard", HelpDeskDashBoard) diff --git a/odoo_website_helpdesk_dashboard/static/src/js/lib/Chart.bundle.js b/odoo_website_helpdesk_dashboard/static/src/js/lib/Chart.bundle.js new file mode 100644 index 000000000..33a955afe --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/src/js/lib/Chart.bundle.js @@ -0,0 +1,19288 @@ +/*! + * Chart.js v2.8.0 + * https://www.chartjs.org + * (c) 2019 Chart.js Contributors + * Released under the MIT License + */ +(function (global, factory) { +typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : +typeof define === 'function' && define.amd ? define(factory) : +(global.Chart = factory()); +}(this, (function () { 'use strict'; + +/* MIT license */ + +var conversions = { + rgb2hsl: rgb2hsl, + rgb2hsv: rgb2hsv, + rgb2hwb: rgb2hwb, + rgb2cmyk: rgb2cmyk, + rgb2keyword: rgb2keyword, + rgb2xyz: rgb2xyz, + rgb2lab: rgb2lab, + rgb2lch: rgb2lch, + + hsl2rgb: hsl2rgb, + hsl2hsv: hsl2hsv, + hsl2hwb: hsl2hwb, + hsl2cmyk: hsl2cmyk, + hsl2keyword: hsl2keyword, + + hsv2rgb: hsv2rgb, + hsv2hsl: hsv2hsl, + hsv2hwb: hsv2hwb, + hsv2cmyk: hsv2cmyk, + hsv2keyword: hsv2keyword, + + hwb2rgb: hwb2rgb, + hwb2hsl: hwb2hsl, + hwb2hsv: hwb2hsv, + hwb2cmyk: hwb2cmyk, + hwb2keyword: hwb2keyword, + + cmyk2rgb: cmyk2rgb, + cmyk2hsl: cmyk2hsl, + cmyk2hsv: cmyk2hsv, + cmyk2hwb: cmyk2hwb, + cmyk2keyword: cmyk2keyword, + + keyword2rgb: keyword2rgb, + keyword2hsl: keyword2hsl, + keyword2hsv: keyword2hsv, + keyword2hwb: keyword2hwb, + keyword2cmyk: keyword2cmyk, + keyword2lab: keyword2lab, + keyword2xyz: keyword2xyz, + + xyz2rgb: xyz2rgb, + xyz2lab: xyz2lab, + xyz2lch: xyz2lch, + + lab2xyz: lab2xyz, + lab2rgb: lab2rgb, + lab2lch: lab2lch, + + lch2lab: lch2lab, + lch2xyz: lch2xyz, + lch2rgb: lch2rgb +}; + + +function rgb2hsl(rgb) { + var r = rgb[0]/255, + g = rgb[1]/255, + b = rgb[2]/255, + min = Math.min(r, g, b), + max = Math.max(r, g, b), + delta = max - min, + h, s, l; + + if (max == min) + h = 0; + else if (r == max) + h = (g - b) / delta; + else if (g == max) + h = 2 + (b - r) / delta; + else if (b == max) + h = 4 + (r - g)/ delta; + + h = Math.min(h * 60, 360); + + if (h < 0) + h += 360; + + l = (min + max) / 2; + + if (max == min) + s = 0; + else if (l <= 0.5) + s = delta / (max + min); + else + s = delta / (2 - max - min); + + return [h, s * 100, l * 100]; +} + +function rgb2hsv(rgb) { + var r = rgb[0], + g = rgb[1], + b = rgb[2], + min = Math.min(r, g, b), + max = Math.max(r, g, b), + delta = max - min, + h, s, v; + + if (max == 0) + s = 0; + else + s = (delta/max * 1000)/10; + + if (max == min) + h = 0; + else if (r == max) + h = (g - b) / delta; + else if (g == max) + h = 2 + (b - r) / delta; + else if (b == max) + h = 4 + (r - g) / delta; + + h = Math.min(h * 60, 360); + + if (h < 0) + h += 360; + + v = ((max / 255) * 1000) / 10; + + return [h, s, v]; +} + +function rgb2hwb(rgb) { + var r = rgb[0], + g = rgb[1], + b = rgb[2], + h = rgb2hsl(rgb)[0], + w = 1/255 * Math.min(r, Math.min(g, b)), + b = 1 - 1/255 * Math.max(r, Math.max(g, b)); + + return [h, w * 100, b * 100]; +} + +function rgb2cmyk(rgb) { + var r = rgb[0] / 255, + g = rgb[1] / 255, + b = rgb[2] / 255, + c, m, y, k; + + k = Math.min(1 - r, 1 - g, 1 - b); + c = (1 - r - k) / (1 - k) || 0; + m = (1 - g - k) / (1 - k) || 0; + y = (1 - b - k) / (1 - k) || 0; + return [c * 100, m * 100, y * 100, k * 100]; +} + +function rgb2keyword(rgb) { + return reverseKeywords[JSON.stringify(rgb)]; +} + +function rgb2xyz(rgb) { + var r = rgb[0] / 255, + g = rgb[1] / 255, + b = rgb[2] / 255; + + // assume sRGB + r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4) : (r / 12.92); + g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4) : (g / 12.92); + b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4) : (b / 12.92); + + var x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805); + var y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722); + var z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505); + + return [x * 100, y *100, z * 100]; +} + +function rgb2lab(rgb) { + var xyz = rgb2xyz(rgb), + x = xyz[0], + y = xyz[1], + z = xyz[2], + l, a, b; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? Math.pow(x, 1/3) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? Math.pow(y, 1/3) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? Math.pow(z, 1/3) : (7.787 * z) + (16 / 116); + + l = (116 * y) - 16; + a = 500 * (x - y); + b = 200 * (y - z); + + return [l, a, b]; +} + +function rgb2lch(args) { + return lab2lch(rgb2lab(args)); +} + +function hsl2rgb(hsl) { + var h = hsl[0] / 360, + s = hsl[1] / 100, + l = hsl[2] / 100, + t1, t2, t3, rgb, val; + + if (s == 0) { + val = l * 255; + return [val, val, val]; + } + + if (l < 0.5) + t2 = l * (1 + s); + else + t2 = l + s - l * s; + t1 = 2 * l - t2; + + rgb = [0, 0, 0]; + for (var i = 0; i < 3; i++) { + t3 = h + 1 / 3 * - (i - 1); + t3 < 0 && t3++; + t3 > 1 && t3--; + + if (6 * t3 < 1) + val = t1 + (t2 - t1) * 6 * t3; + else if (2 * t3 < 1) + val = t2; + else if (3 * t3 < 2) + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + else + val = t1; + + rgb[i] = val * 255; + } + + return rgb; +} + +function hsl2hsv(hsl) { + var h = hsl[0], + s = hsl[1] / 100, + l = hsl[2] / 100, + sv, v; + + if(l === 0) { + // no need to do calc on black + // also avoids divide by 0 error + return [0, 0, 0]; + } + + l *= 2; + s *= (l <= 1) ? l : 2 - l; + v = (l + s) / 2; + sv = (2 * s) / (l + s); + return [h, sv * 100, v * 100]; +} + +function hsl2hwb(args) { + return rgb2hwb(hsl2rgb(args)); +} + +function hsl2cmyk(args) { + return rgb2cmyk(hsl2rgb(args)); +} + +function hsl2keyword(args) { + return rgb2keyword(hsl2rgb(args)); +} + + +function hsv2rgb(hsv) { + var h = hsv[0] / 60, + s = hsv[1] / 100, + v = hsv[2] / 100, + hi = Math.floor(h) % 6; + + var f = h - Math.floor(h), + p = 255 * v * (1 - s), + q = 255 * v * (1 - (s * f)), + t = 255 * v * (1 - (s * (1 - f))), + v = 255 * v; + + switch(hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } +} + +function hsv2hsl(hsv) { + var h = hsv[0], + s = hsv[1] / 100, + v = hsv[2] / 100, + sl, l; + + l = (2 - s) * v; + sl = s * v; + sl /= (l <= 1) ? l : 2 - l; + sl = sl || 0; + l /= 2; + return [h, sl * 100, l * 100]; +} + +function hsv2hwb(args) { + return rgb2hwb(hsv2rgb(args)) +} + +function hsv2cmyk(args) { + return rgb2cmyk(hsv2rgb(args)); +} + +function hsv2keyword(args) { + return rgb2keyword(hsv2rgb(args)); +} + +// http://dev.w3.org/csswg/css-color/#hwb-to-rgb +function hwb2rgb(hwb) { + var h = hwb[0] / 360, + wh = hwb[1] / 100, + bl = hwb[2] / 100, + ratio = wh + bl, + i, v, f, n; + + // wh + bl cant be > 1 + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + + i = Math.floor(6 * h); + v = 1 - bl; + f = 6 * h - i; + if ((i & 0x01) != 0) { + f = 1 - f; + } + n = wh + f * (v - wh); // linear interpolation + + switch (i) { + default: + case 6: + case 0: r = v; g = n; b = wh; break; + case 1: r = n; g = v; b = wh; break; + case 2: r = wh; g = v; b = n; break; + case 3: r = wh; g = n; b = v; break; + case 4: r = n; g = wh; b = v; break; + case 5: r = v; g = wh; b = n; break; + } + + return [r * 255, g * 255, b * 255]; +} + +function hwb2hsl(args) { + return rgb2hsl(hwb2rgb(args)); +} + +function hwb2hsv(args) { + return rgb2hsv(hwb2rgb(args)); +} + +function hwb2cmyk(args) { + return rgb2cmyk(hwb2rgb(args)); +} + +function hwb2keyword(args) { + return rgb2keyword(hwb2rgb(args)); +} + +function cmyk2rgb(cmyk) { + var c = cmyk[0] / 100, + m = cmyk[1] / 100, + y = cmyk[2] / 100, + k = cmyk[3] / 100, + r, g, b; + + r = 1 - Math.min(1, c * (1 - k) + k); + g = 1 - Math.min(1, m * (1 - k) + k); + b = 1 - Math.min(1, y * (1 - k) + k); + return [r * 255, g * 255, b * 255]; +} + +function cmyk2hsl(args) { + return rgb2hsl(cmyk2rgb(args)); +} + +function cmyk2hsv(args) { + return rgb2hsv(cmyk2rgb(args)); +} + +function cmyk2hwb(args) { + return rgb2hwb(cmyk2rgb(args)); +} + +function cmyk2keyword(args) { + return rgb2keyword(cmyk2rgb(args)); +} + + +function xyz2rgb(xyz) { + var x = xyz[0] / 100, + y = xyz[1] / 100, + z = xyz[2] / 100, + r, g, b; + + r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986); + g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415); + b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570); + + // assume sRGB + r = r > 0.0031308 ? ((1.055 * Math.pow(r, 1.0 / 2.4)) - 0.055) + : r = (r * 12.92); + + g = g > 0.0031308 ? ((1.055 * Math.pow(g, 1.0 / 2.4)) - 0.055) + : g = (g * 12.92); + + b = b > 0.0031308 ? ((1.055 * Math.pow(b, 1.0 / 2.4)) - 0.055) + : b = (b * 12.92); + + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + + return [r * 255, g * 255, b * 255]; +} + +function xyz2lab(xyz) { + var x = xyz[0], + y = xyz[1], + z = xyz[2], + l, a, b; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? Math.pow(x, 1/3) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? Math.pow(y, 1/3) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? Math.pow(z, 1/3) : (7.787 * z) + (16 / 116); + + l = (116 * y) - 16; + a = 500 * (x - y); + b = 200 * (y - z); + + return [l, a, b]; +} + +function xyz2lch(args) { + return lab2lch(xyz2lab(args)); +} + +function lab2xyz(lab) { + var l = lab[0], + a = lab[1], + b = lab[2], + x, y, z, y2; + + if (l <= 8) { + y = (l * 100) / 903.3; + y2 = (7.787 * (y / 100)) + (16 / 116); + } else { + y = 100 * Math.pow((l + 16) / 116, 3); + y2 = Math.pow(y / 100, 1/3); + } + + x = x / 95.047 <= 0.008856 ? x = (95.047 * ((a / 500) + y2 - (16 / 116))) / 7.787 : 95.047 * Math.pow((a / 500) + y2, 3); + + z = z / 108.883 <= 0.008859 ? z = (108.883 * (y2 - (b / 200) - (16 / 116))) / 7.787 : 108.883 * Math.pow(y2 - (b / 200), 3); + + return [x, y, z]; +} + +function lab2lch(lab) { + var l = lab[0], + a = lab[1], + b = lab[2], + hr, h, c; + + hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + if (h < 0) { + h += 360; + } + c = Math.sqrt(a * a + b * b); + return [l, c, h]; +} + +function lab2rgb(args) { + return xyz2rgb(lab2xyz(args)); +} + +function lch2lab(lch) { + var l = lch[0], + c = lch[1], + h = lch[2], + a, b, hr; + + hr = h / 360 * 2 * Math.PI; + a = c * Math.cos(hr); + b = c * Math.sin(hr); + return [l, a, b]; +} + +function lch2xyz(args) { + return lab2xyz(lch2lab(args)); +} + +function lch2rgb(args) { + return lab2rgb(lch2lab(args)); +} + +function keyword2rgb(keyword) { + return cssKeywords[keyword]; +} + +function keyword2hsl(args) { + return rgb2hsl(keyword2rgb(args)); +} + +function keyword2hsv(args) { + return rgb2hsv(keyword2rgb(args)); +} + +function keyword2hwb(args) { + return rgb2hwb(keyword2rgb(args)); +} + +function keyword2cmyk(args) { + return rgb2cmyk(keyword2rgb(args)); +} + +function keyword2lab(args) { + return rgb2lab(keyword2rgb(args)); +} + +function keyword2xyz(args) { + return rgb2xyz(keyword2rgb(args)); +} + +var cssKeywords = { + aliceblue: [240,248,255], + antiquewhite: [250,235,215], + aqua: [0,255,255], + aquamarine: [127,255,212], + azure: [240,255,255], + beige: [245,245,220], + bisque: [255,228,196], + black: [0,0,0], + blanchedalmond: [255,235,205], + blue: [0,0,255], + blueviolet: [138,43,226], + brown: [165,42,42], + burlywood: [222,184,135], + cadetblue: [95,158,160], + chartreuse: [127,255,0], + chocolate: [210,105,30], + coral: [255,127,80], + cornflowerblue: [100,149,237], + cornsilk: [255,248,220], + crimson: [220,20,60], + cyan: [0,255,255], + darkblue: [0,0,139], + darkcyan: [0,139,139], + darkgoldenrod: [184,134,11], + darkgray: [169,169,169], + darkgreen: [0,100,0], + darkgrey: [169,169,169], + darkkhaki: [189,183,107], + darkmagenta: [139,0,139], + darkolivegreen: [85,107,47], + darkorange: [255,140,0], + darkorchid: [153,50,204], + darkred: [139,0,0], + darksalmon: [233,150,122], + darkseagreen: [143,188,143], + darkslateblue: [72,61,139], + darkslategray: [47,79,79], + darkslategrey: [47,79,79], + darkturquoise: [0,206,209], + darkviolet: [148,0,211], + deeppink: [255,20,147], + deepskyblue: [0,191,255], + dimgray: [105,105,105], + dimgrey: [105,105,105], + dodgerblue: [30,144,255], + firebrick: [178,34,34], + floralwhite: [255,250,240], + forestgreen: [34,139,34], + fuchsia: [255,0,255], + gainsboro: [220,220,220], + ghostwhite: [248,248,255], + gold: [255,215,0], + goldenrod: [218,165,32], + gray: [128,128,128], + green: [0,128,0], + greenyellow: [173,255,47], + grey: [128,128,128], + honeydew: [240,255,240], + hotpink: [255,105,180], + indianred: [205,92,92], + indigo: [75,0,130], + ivory: [255,255,240], + khaki: [240,230,140], + lavender: [230,230,250], + lavenderblush: [255,240,245], + lawngreen: [124,252,0], + lemonchiffon: [255,250,205], + lightblue: [173,216,230], + lightcoral: [240,128,128], + lightcyan: [224,255,255], + lightgoldenrodyellow: [250,250,210], + lightgray: [211,211,211], + lightgreen: [144,238,144], + lightgrey: [211,211,211], + lightpink: [255,182,193], + lightsalmon: [255,160,122], + lightseagreen: [32,178,170], + lightskyblue: [135,206,250], + lightslategray: [119,136,153], + lightslategrey: [119,136,153], + lightsteelblue: [176,196,222], + lightyellow: [255,255,224], + lime: [0,255,0], + limegreen: [50,205,50], + linen: [250,240,230], + magenta: [255,0,255], + maroon: [128,0,0], + mediumaquamarine: [102,205,170], + mediumblue: [0,0,205], + mediumorchid: [186,85,211], + mediumpurple: [147,112,219], + mediumseagreen: [60,179,113], + mediumslateblue: [123,104,238], + mediumspringgreen: [0,250,154], + mediumturquoise: [72,209,204], + mediumvioletred: [199,21,133], + midnightblue: [25,25,112], + mintcream: [245,255,250], + mistyrose: [255,228,225], + moccasin: [255,228,181], + navajowhite: [255,222,173], + navy: [0,0,128], + oldlace: [253,245,230], + olive: [128,128,0], + olivedrab: [107,142,35], + orange: [255,165,0], + orangered: [255,69,0], + orchid: [218,112,214], + palegoldenrod: [238,232,170], + palegreen: [152,251,152], + paleturquoise: [175,238,238], + palevioletred: [219,112,147], + papayawhip: [255,239,213], + peachpuff: [255,218,185], + peru: [205,133,63], + pink: [255,192,203], + plum: [221,160,221], + powderblue: [176,224,230], + purple: [128,0,128], + rebeccapurple: [102, 51, 153], + red: [255,0,0], + rosybrown: [188,143,143], + royalblue: [65,105,225], + saddlebrown: [139,69,19], + salmon: [250,128,114], + sandybrown: [244,164,96], + seagreen: [46,139,87], + seashell: [255,245,238], + sienna: [160,82,45], + silver: [192,192,192], + skyblue: [135,206,235], + slateblue: [106,90,205], + slategray: [112,128,144], + slategrey: [112,128,144], + snow: [255,250,250], + springgreen: [0,255,127], + steelblue: [70,130,180], + tan: [210,180,140], + teal: [0,128,128], + thistle: [216,191,216], + tomato: [255,99,71], + turquoise: [64,224,208], + violet: [238,130,238], + wheat: [245,222,179], + white: [255,255,255], + whitesmoke: [245,245,245], + yellow: [255,255,0], + yellowgreen: [154,205,50] +}; + +var reverseKeywords = {}; +for (var key in cssKeywords) { + reverseKeywords[JSON.stringify(cssKeywords[key])] = key; +} + +var convert = function() { + return new Converter(); +}; + +for (var func in conversions) { + // export Raw versions + convert[func + "Raw"] = (function(func) { + // accept array or plain args + return function(arg) { + if (typeof arg == "number") + arg = Array.prototype.slice.call(arguments); + return conversions[func](arg); + } + })(func); + + var pair = /(\w+)2(\w+)/.exec(func), + from = pair[1], + to = pair[2]; + + // export rgb2hsl and ["rgb"]["hsl"] + convert[from] = convert[from] || {}; + + convert[from][to] = convert[func] = (function(func) { + return function(arg) { + if (typeof arg == "number") + arg = Array.prototype.slice.call(arguments); + + var val = conversions[func](arg); + if (typeof val == "string" || val === undefined) + return val; // keyword + + for (var i = 0; i < val.length; i++) + val[i] = Math.round(val[i]); + return val; + } + })(func); +} + + +/* Converter does lazy conversion and caching */ +var Converter = function() { + this.convs = {}; +}; + +/* Either get the values for a space or + set the values for a space, depending on args */ +Converter.prototype.routeSpace = function(space, args) { + var values = args[0]; + if (values === undefined) { + // color.rgb() + return this.getValues(space); + } + // color.rgb(10, 10, 10) + if (typeof values == "number") { + values = Array.prototype.slice.call(args); + } + + return this.setValues(space, values); +}; + +/* Set the values for a space, invalidating cache */ +Converter.prototype.setValues = function(space, values) { + this.space = space; + this.convs = {}; + this.convs[space] = values; + return this; +}; + +/* Get the values for a space. If there's already + a conversion for the space, fetch it, otherwise + compute it */ +Converter.prototype.getValues = function(space) { + var vals = this.convs[space]; + if (!vals) { + var fspace = this.space, + from = this.convs[fspace]; + vals = convert[fspace][space](from); + + this.convs[space] = vals; + } + return vals; +}; + +["rgb", "hsl", "hsv", "cmyk", "keyword"].forEach(function(space) { + Converter.prototype[space] = function(vals) { + return this.routeSpace(space, arguments); + }; +}); + +var colorConvert = convert; + +var colorName = { + "aliceblue": [240, 248, 255], + "antiquewhite": [250, 235, 215], + "aqua": [0, 255, 255], + "aquamarine": [127, 255, 212], + "azure": [240, 255, 255], + "beige": [245, 245, 220], + "bisque": [255, 228, 196], + "black": [0, 0, 0], + "blanchedalmond": [255, 235, 205], + "blue": [0, 0, 255], + "blueviolet": [138, 43, 226], + "brown": [165, 42, 42], + "burlywood": [222, 184, 135], + "cadetblue": [95, 158, 160], + "chartreuse": [127, 255, 0], + "chocolate": [210, 105, 30], + "coral": [255, 127, 80], + "cornflowerblue": [100, 149, 237], + "cornsilk": [255, 248, 220], + "crimson": [220, 20, 60], + "cyan": [0, 255, 255], + "darkblue": [0, 0, 139], + "darkcyan": [0, 139, 139], + "darkgoldenrod": [184, 134, 11], + "darkgray": [169, 169, 169], + "darkgreen": [0, 100, 0], + "darkgrey": [169, 169, 169], + "darkkhaki": [189, 183, 107], + "darkmagenta": [139, 0, 139], + "darkolivegreen": [85, 107, 47], + "darkorange": [255, 140, 0], + "darkorchid": [153, 50, 204], + "darkred": [139, 0, 0], + "darksalmon": [233, 150, 122], + "darkseagreen": [143, 188, 143], + "darkslateblue": [72, 61, 139], + "darkslategray": [47, 79, 79], + "darkslategrey": [47, 79, 79], + "darkturquoise": [0, 206, 209], + "darkviolet": [148, 0, 211], + "deeppink": [255, 20, 147], + "deepskyblue": [0, 191, 255], + "dimgray": [105, 105, 105], + "dimgrey": [105, 105, 105], + "dodgerblue": [30, 144, 255], + "firebrick": [178, 34, 34], + "floralwhite": [255, 250, 240], + "forestgreen": [34, 139, 34], + "fuchsia": [255, 0, 255], + "gainsboro": [220, 220, 220], + "ghostwhite": [248, 248, 255], + "gold": [255, 215, 0], + "goldenrod": [218, 165, 32], + "gray": [128, 128, 128], + "green": [0, 128, 0], + "greenyellow": [173, 255, 47], + "grey": [128, 128, 128], + "honeydew": [240, 255, 240], + "hotpink": [255, 105, 180], + "indianred": [205, 92, 92], + "indigo": [75, 0, 130], + "ivory": [255, 255, 240], + "khaki": [240, 230, 140], + "lavender": [230, 230, 250], + "lavenderblush": [255, 240, 245], + "lawngreen": [124, 252, 0], + "lemonchiffon": [255, 250, 205], + "lightblue": [173, 216, 230], + "lightcoral": [240, 128, 128], + "lightcyan": [224, 255, 255], + "lightgoldenrodyellow": [250, 250, 210], + "lightgray": [211, 211, 211], + "lightgreen": [144, 238, 144], + "lightgrey": [211, 211, 211], + "lightpink": [255, 182, 193], + "lightsalmon": [255, 160, 122], + "lightseagreen": [32, 178, 170], + "lightskyblue": [135, 206, 250], + "lightslategray": [119, 136, 153], + "lightslategrey": [119, 136, 153], + "lightsteelblue": [176, 196, 222], + "lightyellow": [255, 255, 224], + "lime": [0, 255, 0], + "limegreen": [50, 205, 50], + "linen": [250, 240, 230], + "magenta": [255, 0, 255], + "maroon": [128, 0, 0], + "mediumaquamarine": [102, 205, 170], + "mediumblue": [0, 0, 205], + "mediumorchid": [186, 85, 211], + "mediumpurple": [147, 112, 219], + "mediumseagreen": [60, 179, 113], + "mediumslateblue": [123, 104, 238], + "mediumspringgreen": [0, 250, 154], + "mediumturquoise": [72, 209, 204], + "mediumvioletred": [199, 21, 133], + "midnightblue": [25, 25, 112], + "mintcream": [245, 255, 250], + "mistyrose": [255, 228, 225], + "moccasin": [255, 228, 181], + "navajowhite": [255, 222, 173], + "navy": [0, 0, 128], + "oldlace": [253, 245, 230], + "olive": [128, 128, 0], + "olivedrab": [107, 142, 35], + "orange": [255, 165, 0], + "orangered": [255, 69, 0], + "orchid": [218, 112, 214], + "palegoldenrod": [238, 232, 170], + "palegreen": [152, 251, 152], + "paleturquoise": [175, 238, 238], + "palevioletred": [219, 112, 147], + "papayawhip": [255, 239, 213], + "peachpuff": [255, 218, 185], + "peru": [205, 133, 63], + "pink": [255, 192, 203], + "plum": [221, 160, 221], + "powderblue": [176, 224, 230], + "purple": [128, 0, 128], + "rebeccapurple": [102, 51, 153], + "red": [255, 0, 0], + "rosybrown": [188, 143, 143], + "royalblue": [65, 105, 225], + "saddlebrown": [139, 69, 19], + "salmon": [250, 128, 114], + "sandybrown": [244, 164, 96], + "seagreen": [46, 139, 87], + "seashell": [255, 245, 238], + "sienna": [160, 82, 45], + "silver": [192, 192, 192], + "skyblue": [135, 206, 235], + "slateblue": [106, 90, 205], + "slategray": [112, 128, 144], + "slategrey": [112, 128, 144], + "snow": [255, 250, 250], + "springgreen": [0, 255, 127], + "steelblue": [70, 130, 180], + "tan": [210, 180, 140], + "teal": [0, 128, 128], + "thistle": [216, 191, 216], + "tomato": [255, 99, 71], + "turquoise": [64, 224, 208], + "violet": [238, 130, 238], + "wheat": [245, 222, 179], + "white": [255, 255, 255], + "whitesmoke": [245, 245, 245], + "yellow": [255, 255, 0], + "yellowgreen": [154, 205, 50] +}; + +/* MIT license */ + + +var colorString = { + getRgba: getRgba, + getHsla: getHsla, + getRgb: getRgb, + getHsl: getHsl, + getHwb: getHwb, + getAlpha: getAlpha, + + hexString: hexString, + rgbString: rgbString, + rgbaString: rgbaString, + percentString: percentString, + percentaString: percentaString, + hslString: hslString, + hslaString: hslaString, + hwbString: hwbString, + keyword: keyword +}; + +function getRgba(string) { + if (!string) { + return; + } + var abbr = /^#([a-fA-F0-9]{3,4})$/i, + hex = /^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i, + rgba = /^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i, + per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i, + keyword = /(\w+)/; + + var rgb = [0, 0, 0], + a = 1, + match = string.match(abbr), + hexAlpha = ""; + if (match) { + match = match[1]; + hexAlpha = match[3]; + for (var i = 0; i < rgb.length; i++) { + rgb[i] = parseInt(match[i] + match[i], 16); + } + if (hexAlpha) { + a = Math.round((parseInt(hexAlpha + hexAlpha, 16) / 255) * 100) / 100; + } + } + else if (match = string.match(hex)) { + hexAlpha = match[2]; + match = match[1]; + for (var i = 0; i < rgb.length; i++) { + rgb[i] = parseInt(match.slice(i * 2, i * 2 + 2), 16); + } + if (hexAlpha) { + a = Math.round((parseInt(hexAlpha, 16) / 255) * 100) / 100; + } + } + else if (match = string.match(rgba)) { + for (var i = 0; i < rgb.length; i++) { + rgb[i] = parseInt(match[i + 1]); + } + a = parseFloat(match[4]); + } + else if (match = string.match(per)) { + for (var i = 0; i < rgb.length; i++) { + rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55); + } + a = parseFloat(match[4]); + } + else if (match = string.match(keyword)) { + if (match[1] == "transparent") { + return [0, 0, 0, 0]; + } + rgb = colorName[match[1]]; + if (!rgb) { + return; + } + } + + for (var i = 0; i < rgb.length; i++) { + rgb[i] = scale(rgb[i], 0, 255); + } + if (!a && a != 0) { + a = 1; + } + else { + a = scale(a, 0, 1); + } + rgb[3] = a; + return rgb; +} + +function getHsla(string) { + if (!string) { + return; + } + var hsl = /^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/; + var match = string.match(hsl); + if (match) { + var alpha = parseFloat(match[4]); + var h = scale(parseInt(match[1]), 0, 360), + s = scale(parseFloat(match[2]), 0, 100), + l = scale(parseFloat(match[3]), 0, 100), + a = scale(isNaN(alpha) ? 1 : alpha, 0, 1); + return [h, s, l, a]; + } +} + +function getHwb(string) { + if (!string) { + return; + } + var hwb = /^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/; + var match = string.match(hwb); + if (match) { + var alpha = parseFloat(match[4]); + var h = scale(parseInt(match[1]), 0, 360), + w = scale(parseFloat(match[2]), 0, 100), + b = scale(parseFloat(match[3]), 0, 100), + a = scale(isNaN(alpha) ? 1 : alpha, 0, 1); + return [h, w, b, a]; + } +} + +function getRgb(string) { + var rgba = getRgba(string); + return rgba && rgba.slice(0, 3); +} + +function getHsl(string) { + var hsla = getHsla(string); + return hsla && hsla.slice(0, 3); +} + +function getAlpha(string) { + var vals = getRgba(string); + if (vals) { + return vals[3]; + } + else if (vals = getHsla(string)) { + return vals[3]; + } + else if (vals = getHwb(string)) { + return vals[3]; + } +} + +// generators +function hexString(rgba, a) { + var a = (a !== undefined && rgba.length === 3) ? a : rgba[3]; + return "#" + hexDouble(rgba[0]) + + hexDouble(rgba[1]) + + hexDouble(rgba[2]) + + ( + (a >= 0 && a < 1) + ? hexDouble(Math.round(a * 255)) + : "" + ); +} + +function rgbString(rgba, alpha) { + if (alpha < 1 || (rgba[3] && rgba[3] < 1)) { + return rgbaString(rgba, alpha); + } + return "rgb(" + rgba[0] + ", " + rgba[1] + ", " + rgba[2] + ")"; +} + +function rgbaString(rgba, alpha) { + if (alpha === undefined) { + alpha = (rgba[3] !== undefined ? rgba[3] : 1); + } + return "rgba(" + rgba[0] + ", " + rgba[1] + ", " + rgba[2] + + ", " + alpha + ")"; +} + +function percentString(rgba, alpha) { + if (alpha < 1 || (rgba[3] && rgba[3] < 1)) { + return percentaString(rgba, alpha); + } + var r = Math.round(rgba[0]/255 * 100), + g = Math.round(rgba[1]/255 * 100), + b = Math.round(rgba[2]/255 * 100); + + return "rgb(" + r + "%, " + g + "%, " + b + "%)"; +} + +function percentaString(rgba, alpha) { + var r = Math.round(rgba[0]/255 * 100), + g = Math.round(rgba[1]/255 * 100), + b = Math.round(rgba[2]/255 * 100); + return "rgba(" + r + "%, " + g + "%, " + b + "%, " + (alpha || rgba[3] || 1) + ")"; +} + +function hslString(hsla, alpha) { + if (alpha < 1 || (hsla[3] && hsla[3] < 1)) { + return hslaString(hsla, alpha); + } + return "hsl(" + hsla[0] + ", " + hsla[1] + "%, " + hsla[2] + "%)"; +} + +function hslaString(hsla, alpha) { + if (alpha === undefined) { + alpha = (hsla[3] !== undefined ? hsla[3] : 1); + } + return "hsla(" + hsla[0] + ", " + hsla[1] + "%, " + hsla[2] + "%, " + + alpha + ")"; +} + +// hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax +// (hwb have alpha optional & 1 is default value) +function hwbString(hwb, alpha) { + if (alpha === undefined) { + alpha = (hwb[3] !== undefined ? hwb[3] : 1); + } + return "hwb(" + hwb[0] + ", " + hwb[1] + "%, " + hwb[2] + "%" + + (alpha !== undefined && alpha !== 1 ? ", " + alpha : "") + ")"; +} + +function keyword(rgb) { + return reverseNames[rgb.slice(0, 3)]; +} + +// helpers +function scale(num, min, max) { + return Math.min(Math.max(min, num), max); +} + +function hexDouble(num) { + var str = num.toString(16).toUpperCase(); + return (str.length < 2) ? "0" + str : str; +} + + +//create a list of reverse color names +var reverseNames = {}; +for (var name in colorName) { + reverseNames[colorName[name]] = name; +} + +/* MIT license */ + + + +var Color = function (obj) { + if (obj instanceof Color) { + return obj; + } + if (!(this instanceof Color)) { + return new Color(obj); + } + + this.valid = false; + this.values = { + rgb: [0, 0, 0], + hsl: [0, 0, 0], + hsv: [0, 0, 0], + hwb: [0, 0, 0], + cmyk: [0, 0, 0, 0], + alpha: 1 + }; + + // parse Color() argument + var vals; + if (typeof obj === 'string') { + vals = colorString.getRgba(obj); + if (vals) { + this.setValues('rgb', vals); + } else if (vals = colorString.getHsla(obj)) { + this.setValues('hsl', vals); + } else if (vals = colorString.getHwb(obj)) { + this.setValues('hwb', vals); + } + } else if (typeof obj === 'object') { + vals = obj; + if (vals.r !== undefined || vals.red !== undefined) { + this.setValues('rgb', vals); + } else if (vals.l !== undefined || vals.lightness !== undefined) { + this.setValues('hsl', vals); + } else if (vals.v !== undefined || vals.value !== undefined) { + this.setValues('hsv', vals); + } else if (vals.w !== undefined || vals.whiteness !== undefined) { + this.setValues('hwb', vals); + } else if (vals.c !== undefined || vals.cyan !== undefined) { + this.setValues('cmyk', vals); + } + } +}; + +Color.prototype = { + isValid: function () { + return this.valid; + }, + rgb: function () { + return this.setSpace('rgb', arguments); + }, + hsl: function () { + return this.setSpace('hsl', arguments); + }, + hsv: function () { + return this.setSpace('hsv', arguments); + }, + hwb: function () { + return this.setSpace('hwb', arguments); + }, + cmyk: function () { + return this.setSpace('cmyk', arguments); + }, + + rgbArray: function () { + return this.values.rgb; + }, + hslArray: function () { + return this.values.hsl; + }, + hsvArray: function () { + return this.values.hsv; + }, + hwbArray: function () { + var values = this.values; + if (values.alpha !== 1) { + return values.hwb.concat([values.alpha]); + } + return values.hwb; + }, + cmykArray: function () { + return this.values.cmyk; + }, + rgbaArray: function () { + var values = this.values; + return values.rgb.concat([values.alpha]); + }, + hslaArray: function () { + var values = this.values; + return values.hsl.concat([values.alpha]); + }, + alpha: function (val) { + if (val === undefined) { + return this.values.alpha; + } + this.setValues('alpha', val); + return this; + }, + + red: function (val) { + return this.setChannel('rgb', 0, val); + }, + green: function (val) { + return this.setChannel('rgb', 1, val); + }, + blue: function (val) { + return this.setChannel('rgb', 2, val); + }, + hue: function (val) { + if (val) { + val %= 360; + val = val < 0 ? 360 + val : val; + } + return this.setChannel('hsl', 0, val); + }, + saturation: function (val) { + return this.setChannel('hsl', 1, val); + }, + lightness: function (val) { + return this.setChannel('hsl', 2, val); + }, + saturationv: function (val) { + return this.setChannel('hsv', 1, val); + }, + whiteness: function (val) { + return this.setChannel('hwb', 1, val); + }, + blackness: function (val) { + return this.setChannel('hwb', 2, val); + }, + value: function (val) { + return this.setChannel('hsv', 2, val); + }, + cyan: function (val) { + return this.setChannel('cmyk', 0, val); + }, + magenta: function (val) { + return this.setChannel('cmyk', 1, val); + }, + yellow: function (val) { + return this.setChannel('cmyk', 2, val); + }, + black: function (val) { + return this.setChannel('cmyk', 3, val); + }, + + hexString: function () { + return colorString.hexString(this.values.rgb); + }, + rgbString: function () { + return colorString.rgbString(this.values.rgb, this.values.alpha); + }, + rgbaString: function () { + return colorString.rgbaString(this.values.rgb, this.values.alpha); + }, + percentString: function () { + return colorString.percentString(this.values.rgb, this.values.alpha); + }, + hslString: function () { + return colorString.hslString(this.values.hsl, this.values.alpha); + }, + hslaString: function () { + return colorString.hslaString(this.values.hsl, this.values.alpha); + }, + hwbString: function () { + return colorString.hwbString(this.values.hwb, this.values.alpha); + }, + keyword: function () { + return colorString.keyword(this.values.rgb, this.values.alpha); + }, + + rgbNumber: function () { + var rgb = this.values.rgb; + return (rgb[0] << 16) | (rgb[1] << 8) | rgb[2]; + }, + + luminosity: function () { + // http://www.w3.org/TR/WCAG20/#relativeluminancedef + var rgb = this.values.rgb; + var lum = []; + for (var i = 0; i < rgb.length; i++) { + var chan = rgb[i] / 255; + lum[i] = (chan <= 0.03928) ? chan / 12.92 : Math.pow(((chan + 0.055) / 1.055), 2.4); + } + return 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2]; + }, + + contrast: function (color2) { + // http://www.w3.org/TR/WCAG20/#contrast-ratiodef + var lum1 = this.luminosity(); + var lum2 = color2.luminosity(); + if (lum1 > lum2) { + return (lum1 + 0.05) / (lum2 + 0.05); + } + return (lum2 + 0.05) / (lum1 + 0.05); + }, + + level: function (color2) { + var contrastRatio = this.contrast(color2); + if (contrastRatio >= 7.1) { + return 'AAA'; + } + + return (contrastRatio >= 4.5) ? 'AA' : ''; + }, + + dark: function () { + // YIQ equation from http://24ways.org/2010/calculating-color-contrast + var rgb = this.values.rgb; + var yiq = (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1000; + return yiq < 128; + }, + + light: function () { + return !this.dark(); + }, + + negate: function () { + var rgb = []; + for (var i = 0; i < 3; i++) { + rgb[i] = 255 - this.values.rgb[i]; + } + this.setValues('rgb', rgb); + return this; + }, + + lighten: function (ratio) { + var hsl = this.values.hsl; + hsl[2] += hsl[2] * ratio; + this.setValues('hsl', hsl); + return this; + }, + + darken: function (ratio) { + var hsl = this.values.hsl; + hsl[2] -= hsl[2] * ratio; + this.setValues('hsl', hsl); + return this; + }, + + saturate: function (ratio) { + var hsl = this.values.hsl; + hsl[1] += hsl[1] * ratio; + this.setValues('hsl', hsl); + return this; + }, + + desaturate: function (ratio) { + var hsl = this.values.hsl; + hsl[1] -= hsl[1] * ratio; + this.setValues('hsl', hsl); + return this; + }, + + whiten: function (ratio) { + var hwb = this.values.hwb; + hwb[1] += hwb[1] * ratio; + this.setValues('hwb', hwb); + return this; + }, + + blacken: function (ratio) { + var hwb = this.values.hwb; + hwb[2] += hwb[2] * ratio; + this.setValues('hwb', hwb); + return this; + }, + + greyscale: function () { + var rgb = this.values.rgb; + // http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale + var val = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11; + this.setValues('rgb', [val, val, val]); + return this; + }, + + clearer: function (ratio) { + var alpha = this.values.alpha; + this.setValues('alpha', alpha - (alpha * ratio)); + return this; + }, + + opaquer: function (ratio) { + var alpha = this.values.alpha; + this.setValues('alpha', alpha + (alpha * ratio)); + return this; + }, + + rotate: function (degrees) { + var hsl = this.values.hsl; + var hue = (hsl[0] + degrees) % 360; + hsl[0] = hue < 0 ? 360 + hue : hue; + this.setValues('hsl', hsl); + return this; + }, + + /** + * Ported from sass implementation in C + * https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209 + */ + mix: function (mixinColor, weight) { + var color1 = this; + var color2 = mixinColor; + var p = weight === undefined ? 0.5 : weight; + + var w = 2 * p - 1; + var a = color1.alpha() - color2.alpha(); + + var w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2.0; + var w2 = 1 - w1; + + return this + .rgb( + w1 * color1.red() + w2 * color2.red(), + w1 * color1.green() + w2 * color2.green(), + w1 * color1.blue() + w2 * color2.blue() + ) + .alpha(color1.alpha() * p + color2.alpha() * (1 - p)); + }, + + toJSON: function () { + return this.rgb(); + }, + + clone: function () { + // NOTE(SB): using node-clone creates a dependency to Buffer when using browserify, + // making the final build way to big to embed in Chart.js. So let's do it manually, + // assuming that values to clone are 1 dimension arrays containing only numbers, + // except 'alpha' which is a number. + var result = new Color(); + var source = this.values; + var target = result.values; + var value, type; + + for (var prop in source) { + if (source.hasOwnProperty(prop)) { + value = source[prop]; + type = ({}).toString.call(value); + if (type === '[object Array]') { + target[prop] = value.slice(0); + } else if (type === '[object Number]') { + target[prop] = value; + } else { + console.error('unexpected color value:', value); + } + } + } + + return result; + } +}; + +Color.prototype.spaces = { + rgb: ['red', 'green', 'blue'], + hsl: ['hue', 'saturation', 'lightness'], + hsv: ['hue', 'saturation', 'value'], + hwb: ['hue', 'whiteness', 'blackness'], + cmyk: ['cyan', 'magenta', 'yellow', 'black'] +}; + +Color.prototype.maxes = { + rgb: [255, 255, 255], + hsl: [360, 100, 100], + hsv: [360, 100, 100], + hwb: [360, 100, 100], + cmyk: [100, 100, 100, 100] +}; + +Color.prototype.getValues = function (space) { + var values = this.values; + var vals = {}; + + for (var i = 0; i < space.length; i++) { + vals[space.charAt(i)] = values[space][i]; + } + + if (values.alpha !== 1) { + vals.a = values.alpha; + } + + // {r: 255, g: 255, b: 255, a: 0.4} + return vals; +}; + +Color.prototype.setValues = function (space, vals) { + var values = this.values; + var spaces = this.spaces; + var maxes = this.maxes; + var alpha = 1; + var i; + + this.valid = true; + + if (space === 'alpha') { + alpha = vals; + } else if (vals.length) { + // [10, 10, 10] + values[space] = vals.slice(0, space.length); + alpha = vals[space.length]; + } else if (vals[space.charAt(0)] !== undefined) { + // {r: 10, g: 10, b: 10} + for (i = 0; i < space.length; i++) { + values[space][i] = vals[space.charAt(i)]; + } + + alpha = vals.a; + } else if (vals[spaces[space][0]] !== undefined) { + // {red: 10, green: 10, blue: 10} + var chans = spaces[space]; + + for (i = 0; i < space.length; i++) { + values[space][i] = vals[chans[i]]; + } + + alpha = vals.alpha; + } + + values.alpha = Math.max(0, Math.min(1, (alpha === undefined ? values.alpha : alpha))); + + if (space === 'alpha') { + return false; + } + + var capped; + + // cap values of the space prior converting all values + for (i = 0; i < space.length; i++) { + capped = Math.max(0, Math.min(maxes[space][i], values[space][i])); + values[space][i] = Math.round(capped); + } + + // convert to all the other color spaces + for (var sname in spaces) { + if (sname !== space) { + values[sname] = colorConvert[space][sname](values[space]); + } + } + + return true; +}; + +Color.prototype.setSpace = function (space, args) { + var vals = args[0]; + + if (vals === undefined) { + // color.rgb() + return this.getValues(space); + } + + // color.rgb(10, 10, 10) + if (typeof vals === 'number') { + vals = Array.prototype.slice.call(args); + } + + this.setValues(space, vals); + return this; +}; + +Color.prototype.setChannel = function (space, index, val) { + var svalues = this.values[space]; + if (val === undefined) { + // color.red() + return svalues[index]; + } else if (val === svalues[index]) { + // color.red(color.red()) + return this; + } + + // color.red(100) + svalues[index] = val; + this.setValues(space, svalues); + + return this; +}; + +if (typeof window !== 'undefined') { + window.Color = Color; +} + +var chartjsColor = Color; + +/** + * @namespace Chart.helpers + */ +var helpers = { + /** + * An empty function that can be used, for example, for optional callback. + */ + noop: function() {}, + + /** + * Returns a unique id, sequentially generated from a global variable. + * @returns {number} + * @function + */ + uid: (function() { + var id = 0; + return function() { + return id++; + }; + }()), + + /** + * Returns true if `value` is neither null nor undefined, else returns false. + * @param {*} value - The value to test. + * @returns {boolean} + * @since 2.7.0 + */ + isNullOrUndef: function(value) { + return value === null || typeof value === 'undefined'; + }, + + /** + * Returns true if `value` is an array (including typed arrays), else returns false. + * @param {*} value - The value to test. + * @returns {boolean} + * @function + */ + isArray: function(value) { + if (Array.isArray && Array.isArray(value)) { + return true; + } + var type = Object.prototype.toString.call(value); + if (type.substr(0, 7) === '[object' && type.substr(-6) === 'Array]') { + return true; + } + return false; + }, + + /** + * Returns true if `value` is an object (excluding null), else returns false. + * @param {*} value - The value to test. + * @returns {boolean} + * @since 2.7.0 + */ + isObject: function(value) { + return value !== null && Object.prototype.toString.call(value) === '[object Object]'; + }, + + /** + * Returns true if `value` is a finite number, else returns false + * @param {*} value - The value to test. + * @returns {boolean} + */ + isFinite: function(value) { + return (typeof value === 'number' || value instanceof Number) && isFinite(value); + }, + + /** + * Returns `value` if defined, else returns `defaultValue`. + * @param {*} value - The value to return if defined. + * @param {*} defaultValue - The value to return if `value` is undefined. + * @returns {*} + */ + valueOrDefault: function(value, defaultValue) { + return typeof value === 'undefined' ? defaultValue : value; + }, + + /** + * Returns value at the given `index` in array if defined, else returns `defaultValue`. + * @param {Array} value - The array to lookup for value at `index`. + * @param {number} index - The index in `value` to lookup for value. + * @param {*} defaultValue - The value to return if `value[index]` is undefined. + * @returns {*} + */ + valueAtIndexOrDefault: function(value, index, defaultValue) { + return helpers.valueOrDefault(helpers.isArray(value) ? value[index] : value, defaultValue); + }, + + /** + * Calls `fn` with the given `args` in the scope defined by `thisArg` and returns the + * value returned by `fn`. If `fn` is not a function, this method returns undefined. + * @param {function} fn - The function to call. + * @param {Array|undefined|null} args - The arguments with which `fn` should be called. + * @param {object} [thisArg] - The value of `this` provided for the call to `fn`. + * @returns {*} + */ + callback: function(fn, args, thisArg) { + if (fn && typeof fn.call === 'function') { + return fn.apply(thisArg, args); + } + }, + + /** + * Note(SB) for performance sake, this method should only be used when loopable type + * is unknown or in none intensive code (not called often and small loopable). Else + * it's preferable to use a regular for() loop and save extra function calls. + * @param {object|Array} loopable - The object or array to be iterated. + * @param {function} fn - The function to call for each item. + * @param {object} [thisArg] - The value of `this` provided for the call to `fn`. + * @param {boolean} [reverse] - If true, iterates backward on the loopable. + */ + each: function(loopable, fn, thisArg, reverse) { + var i, len, keys; + if (helpers.isArray(loopable)) { + len = loopable.length; + if (reverse) { + for (i = len - 1; i >= 0; i--) { + fn.call(thisArg, loopable[i], i); + } + } else { + for (i = 0; i < len; i++) { + fn.call(thisArg, loopable[i], i); + } + } + } else if (helpers.isObject(loopable)) { + keys = Object.keys(loopable); + len = keys.length; + for (i = 0; i < len; i++) { + fn.call(thisArg, loopable[keys[i]], keys[i]); + } + } + }, + + /** + * Returns true if the `a0` and `a1` arrays have the same content, else returns false. + * @see https://stackoverflow.com/a/14853974 + * @param {Array} a0 - The array to compare + * @param {Array} a1 - The array to compare + * @returns {boolean} + */ + arrayEquals: function(a0, a1) { + var i, ilen, v0, v1; + + if (!a0 || !a1 || a0.length !== a1.length) { + return false; + } + + for (i = 0, ilen = a0.length; i < ilen; ++i) { + v0 = a0[i]; + v1 = a1[i]; + + if (v0 instanceof Array && v1 instanceof Array) { + if (!helpers.arrayEquals(v0, v1)) { + return false; + } + } else if (v0 !== v1) { + // NOTE: two different object instances will never be equal: {x:20} != {x:20} + return false; + } + } + + return true; + }, + + /** + * Returns a deep copy of `source` without keeping references on objects and arrays. + * @param {*} source - The value to clone. + * @returns {*} + */ + clone: function(source) { + if (helpers.isArray(source)) { + return source.map(helpers.clone); + } + + if (helpers.isObject(source)) { + var target = {}; + var keys = Object.keys(source); + var klen = keys.length; + var k = 0; + + for (; k < klen; ++k) { + target[keys[k]] = helpers.clone(source[keys[k]]); + } + + return target; + } + + return source; + }, + + /** + * The default merger when Chart.helpers.merge is called without merger option. + * Note(SB): also used by mergeConfig and mergeScaleConfig as fallback. + * @private + */ + _merger: function(key, target, source, options) { + var tval = target[key]; + var sval = source[key]; + + if (helpers.isObject(tval) && helpers.isObject(sval)) { + helpers.merge(tval, sval, options); + } else { + target[key] = helpers.clone(sval); + } + }, + + /** + * Merges source[key] in target[key] only if target[key] is undefined. + * @private + */ + _mergerIf: function(key, target, source) { + var tval = target[key]; + var sval = source[key]; + + if (helpers.isObject(tval) && helpers.isObject(sval)) { + helpers.mergeIf(tval, sval); + } else if (!target.hasOwnProperty(key)) { + target[key] = helpers.clone(sval); + } + }, + + /** + * Recursively deep copies `source` properties into `target` with the given `options`. + * IMPORTANT: `target` is not cloned and will be updated with `source` properties. + * @param {object} target - The target object in which all sources are merged into. + * @param {object|object[]} source - Object(s) to merge into `target`. + * @param {object} [options] - Merging options: + * @param {function} [options.merger] - The merge method (key, target, source, options) + * @returns {object} The `target` object. + */ + merge: function(target, source, options) { + var sources = helpers.isArray(source) ? source : [source]; + var ilen = sources.length; + var merge, i, keys, klen, k; + + if (!helpers.isObject(target)) { + return target; + } + + options = options || {}; + merge = options.merger || helpers._merger; + + for (i = 0; i < ilen; ++i) { + source = sources[i]; + if (!helpers.isObject(source)) { + continue; + } + + keys = Object.keys(source); + for (k = 0, klen = keys.length; k < klen; ++k) { + merge(keys[k], target, source, options); + } + } + + return target; + }, + + /** + * Recursively deep copies `source` properties into `target` *only* if not defined in target. + * IMPORTANT: `target` is not cloned and will be updated with `source` properties. + * @param {object} target - The target object in which all sources are merged into. + * @param {object|object[]} source - Object(s) to merge into `target`. + * @returns {object} The `target` object. + */ + mergeIf: function(target, source) { + return helpers.merge(target, source, {merger: helpers._mergerIf}); + }, + + /** + * Applies the contents of two or more objects together into the first object. + * @param {object} target - The target object in which all objects are merged into. + * @param {object} arg1 - Object containing additional properties to merge in target. + * @param {object} argN - Additional objects containing properties to merge in target. + * @returns {object} The `target` object. + */ + extend: function(target) { + var setFn = function(value, key) { + target[key] = value; + }; + for (var i = 1, ilen = arguments.length; i < ilen; ++i) { + helpers.each(arguments[i], setFn); + } + return target; + }, + + /** + * Basic javascript inheritance based on the model created in Backbone.js + */ + inherits: function(extensions) { + var me = this; + var ChartElement = (extensions && extensions.hasOwnProperty('constructor')) ? extensions.constructor : function() { + return me.apply(this, arguments); + }; + + var Surrogate = function() { + this.constructor = ChartElement; + }; + + Surrogate.prototype = me.prototype; + ChartElement.prototype = new Surrogate(); + ChartElement.extend = helpers.inherits; + + if (extensions) { + helpers.extend(ChartElement.prototype, extensions); + } + + ChartElement.__super__ = me.prototype; + return ChartElement; + } +}; + +var helpers_core = helpers; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use Chart.helpers.callback instead. + * @function Chart.helpers.callCallback + * @deprecated since version 2.6.0 + * @todo remove at version 3 + * @private + */ +helpers.callCallback = helpers.callback; + +/** + * Provided for backward compatibility, use Array.prototype.indexOf instead. + * Array.prototype.indexOf compatibility: Chrome, Opera, Safari, FF1.5+, IE9+ + * @function Chart.helpers.indexOf + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers.indexOf = function(array, item, fromIndex) { + return Array.prototype.indexOf.call(array, item, fromIndex); +}; + +/** + * Provided for backward compatibility, use Chart.helpers.valueOrDefault instead. + * @function Chart.helpers.getValueOrDefault + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers.getValueOrDefault = helpers.valueOrDefault; + +/** + * Provided for backward compatibility, use Chart.helpers.valueAtIndexOrDefault instead. + * @function Chart.helpers.getValueAtIndexOrDefault + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers.getValueAtIndexOrDefault = helpers.valueAtIndexOrDefault; + +/** + * Easing functions adapted from Robert Penner's easing equations. + * @namespace Chart.helpers.easingEffects + * @see http://www.robertpenner.com/easing/ + */ +var effects = { + linear: function(t) { + return t; + }, + + easeInQuad: function(t) { + return t * t; + }, + + easeOutQuad: function(t) { + return -t * (t - 2); + }, + + easeInOutQuad: function(t) { + if ((t /= 0.5) < 1) { + return 0.5 * t * t; + } + return -0.5 * ((--t) * (t - 2) - 1); + }, + + easeInCubic: function(t) { + return t * t * t; + }, + + easeOutCubic: function(t) { + return (t = t - 1) * t * t + 1; + }, + + easeInOutCubic: function(t) { + if ((t /= 0.5) < 1) { + return 0.5 * t * t * t; + } + return 0.5 * ((t -= 2) * t * t + 2); + }, + + easeInQuart: function(t) { + return t * t * t * t; + }, + + easeOutQuart: function(t) { + return -((t = t - 1) * t * t * t - 1); + }, + + easeInOutQuart: function(t) { + if ((t /= 0.5) < 1) { + return 0.5 * t * t * t * t; + } + return -0.5 * ((t -= 2) * t * t * t - 2); + }, + + easeInQuint: function(t) { + return t * t * t * t * t; + }, + + easeOutQuint: function(t) { + return (t = t - 1) * t * t * t * t + 1; + }, + + easeInOutQuint: function(t) { + if ((t /= 0.5) < 1) { + return 0.5 * t * t * t * t * t; + } + return 0.5 * ((t -= 2) * t * t * t * t + 2); + }, + + easeInSine: function(t) { + return -Math.cos(t * (Math.PI / 2)) + 1; + }, + + easeOutSine: function(t) { + return Math.sin(t * (Math.PI / 2)); + }, + + easeInOutSine: function(t) { + return -0.5 * (Math.cos(Math.PI * t) - 1); + }, + + easeInExpo: function(t) { + return (t === 0) ? 0 : Math.pow(2, 10 * (t - 1)); + }, + + easeOutExpo: function(t) { + return (t === 1) ? 1 : -Math.pow(2, -10 * t) + 1; + }, + + easeInOutExpo: function(t) { + if (t === 0) { + return 0; + } + if (t === 1) { + return 1; + } + if ((t /= 0.5) < 1) { + return 0.5 * Math.pow(2, 10 * (t - 1)); + } + return 0.5 * (-Math.pow(2, -10 * --t) + 2); + }, + + easeInCirc: function(t) { + if (t >= 1) { + return t; + } + return -(Math.sqrt(1 - t * t) - 1); + }, + + easeOutCirc: function(t) { + return Math.sqrt(1 - (t = t - 1) * t); + }, + + easeInOutCirc: function(t) { + if ((t /= 0.5) < 1) { + return -0.5 * (Math.sqrt(1 - t * t) - 1); + } + return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1); + }, + + easeInElastic: function(t) { + var s = 1.70158; + var p = 0; + var a = 1; + if (t === 0) { + return 0; + } + if (t === 1) { + return 1; + } + if (!p) { + p = 0.3; + } + if (a < 1) { + a = 1; + s = p / 4; + } else { + s = p / (2 * Math.PI) * Math.asin(1 / a); + } + return -(a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p)); + }, + + easeOutElastic: function(t) { + var s = 1.70158; + var p = 0; + var a = 1; + if (t === 0) { + return 0; + } + if (t === 1) { + return 1; + } + if (!p) { + p = 0.3; + } + if (a < 1) { + a = 1; + s = p / 4; + } else { + s = p / (2 * Math.PI) * Math.asin(1 / a); + } + return a * Math.pow(2, -10 * t) * Math.sin((t - s) * (2 * Math.PI) / p) + 1; + }, + + easeInOutElastic: function(t) { + var s = 1.70158; + var p = 0; + var a = 1; + if (t === 0) { + return 0; + } + if ((t /= 0.5) === 2) { + return 1; + } + if (!p) { + p = 0.45; + } + if (a < 1) { + a = 1; + s = p / 4; + } else { + s = p / (2 * Math.PI) * Math.asin(1 / a); + } + if (t < 1) { + return -0.5 * (a * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p)); + } + return a * Math.pow(2, -10 * (t -= 1)) * Math.sin((t - s) * (2 * Math.PI) / p) * 0.5 + 1; + }, + easeInBack: function(t) { + var s = 1.70158; + return t * t * ((s + 1) * t - s); + }, + + easeOutBack: function(t) { + var s = 1.70158; + return (t = t - 1) * t * ((s + 1) * t + s) + 1; + }, + + easeInOutBack: function(t) { + var s = 1.70158; + if ((t /= 0.5) < 1) { + return 0.5 * (t * t * (((s *= (1.525)) + 1) * t - s)); + } + return 0.5 * ((t -= 2) * t * (((s *= (1.525)) + 1) * t + s) + 2); + }, + + easeInBounce: function(t) { + return 1 - effects.easeOutBounce(1 - t); + }, + + easeOutBounce: function(t) { + if (t < (1 / 2.75)) { + return 7.5625 * t * t; + } + if (t < (2 / 2.75)) { + return 7.5625 * (t -= (1.5 / 2.75)) * t + 0.75; + } + if (t < (2.5 / 2.75)) { + return 7.5625 * (t -= (2.25 / 2.75)) * t + 0.9375; + } + return 7.5625 * (t -= (2.625 / 2.75)) * t + 0.984375; + }, + + easeInOutBounce: function(t) { + if (t < 0.5) { + return effects.easeInBounce(t * 2) * 0.5; + } + return effects.easeOutBounce(t * 2 - 1) * 0.5 + 0.5; + } +}; + +var helpers_easing = { + effects: effects +}; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use Chart.helpers.easing.effects instead. + * @function Chart.helpers.easingEffects + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers_core.easingEffects = effects; + +var PI = Math.PI; +var RAD_PER_DEG = PI / 180; +var DOUBLE_PI = PI * 2; +var HALF_PI = PI / 2; +var QUARTER_PI = PI / 4; +var TWO_THIRDS_PI = PI * 2 / 3; + +/** + * @namespace Chart.helpers.canvas + */ +var exports$1 = { + /** + * Clears the entire canvas associated to the given `chart`. + * @param {Chart} chart - The chart for which to clear the canvas. + */ + clear: function(chart) { + chart.ctx.clearRect(0, 0, chart.width, chart.height); + }, + + /** + * Creates a "path" for a rectangle with rounded corners at position (x, y) with a + * given size (width, height) and the same `radius` for all corners. + * @param {CanvasRenderingContext2D} ctx - The canvas 2D Context. + * @param {number} x - The x axis of the coordinate for the rectangle starting point. + * @param {number} y - The y axis of the coordinate for the rectangle starting point. + * @param {number} width - The rectangle's width. + * @param {number} height - The rectangle's height. + * @param {number} radius - The rounded amount (in pixels) for the four corners. + * @todo handle `radius` as top-left, top-right, bottom-right, bottom-left array/object? + */ + roundedRect: function(ctx, x, y, width, height, radius) { + if (radius) { + var r = Math.min(radius, height / 2, width / 2); + var left = x + r; + var top = y + r; + var right = x + width - r; + var bottom = y + height - r; + + ctx.moveTo(x, top); + if (left < right && top < bottom) { + ctx.arc(left, top, r, -PI, -HALF_PI); + ctx.arc(right, top, r, -HALF_PI, 0); + ctx.arc(right, bottom, r, 0, HALF_PI); + ctx.arc(left, bottom, r, HALF_PI, PI); + } else if (left < right) { + ctx.moveTo(left, y); + ctx.arc(right, top, r, -HALF_PI, HALF_PI); + ctx.arc(left, top, r, HALF_PI, PI + HALF_PI); + } else if (top < bottom) { + ctx.arc(left, top, r, -PI, 0); + ctx.arc(left, bottom, r, 0, PI); + } else { + ctx.arc(left, top, r, -PI, PI); + } + ctx.closePath(); + ctx.moveTo(x, y); + } else { + ctx.rect(x, y, width, height); + } + }, + + drawPoint: function(ctx, style, radius, x, y, rotation) { + var type, xOffset, yOffset, size, cornerRadius; + var rad = (rotation || 0) * RAD_PER_DEG; + + if (style && typeof style === 'object') { + type = style.toString(); + if (type === '[object HTMLImageElement]' || type === '[object HTMLCanvasElement]') { + ctx.drawImage(style, x - style.width / 2, y - style.height / 2, style.width, style.height); + return; + } + } + + if (isNaN(radius) || radius <= 0) { + return; + } + + ctx.beginPath(); + + switch (style) { + // Default includes circle + default: + ctx.arc(x, y, radius, 0, DOUBLE_PI); + ctx.closePath(); + break; + case 'triangle': + ctx.moveTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius); + rad += TWO_THIRDS_PI; + ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius); + rad += TWO_THIRDS_PI; + ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius); + ctx.closePath(); + break; + case 'rectRounded': + // NOTE: the rounded rect implementation changed to use `arc` instead of + // `quadraticCurveTo` since it generates better results when rect is + // almost a circle. 0.516 (instead of 0.5) produces results with visually + // closer proportion to the previous impl and it is inscribed in the + // circle with `radius`. For more details, see the following PRs: + // https://github.com/chartjs/Chart.js/issues/5597 + // https://github.com/chartjs/Chart.js/issues/5858 + cornerRadius = radius * 0.516; + size = radius - cornerRadius; + xOffset = Math.cos(rad + QUARTER_PI) * size; + yOffset = Math.sin(rad + QUARTER_PI) * size; + ctx.arc(x - xOffset, y - yOffset, cornerRadius, rad - PI, rad - HALF_PI); + ctx.arc(x + yOffset, y - xOffset, cornerRadius, rad - HALF_PI, rad); + ctx.arc(x + xOffset, y + yOffset, cornerRadius, rad, rad + HALF_PI); + ctx.arc(x - yOffset, y + xOffset, cornerRadius, rad + HALF_PI, rad + PI); + ctx.closePath(); + break; + case 'rect': + if (!rotation) { + size = Math.SQRT1_2 * radius; + ctx.rect(x - size, y - size, 2 * size, 2 * size); + break; + } + rad += QUARTER_PI; + /* falls through */ + case 'rectRot': + xOffset = Math.cos(rad) * radius; + yOffset = Math.sin(rad) * radius; + ctx.moveTo(x - xOffset, y - yOffset); + ctx.lineTo(x + yOffset, y - xOffset); + ctx.lineTo(x + xOffset, y + yOffset); + ctx.lineTo(x - yOffset, y + xOffset); + ctx.closePath(); + break; + case 'crossRot': + rad += QUARTER_PI; + /* falls through */ + case 'cross': + xOffset = Math.cos(rad) * radius; + yOffset = Math.sin(rad) * radius; + ctx.moveTo(x - xOffset, y - yOffset); + ctx.lineTo(x + xOffset, y + yOffset); + ctx.moveTo(x + yOffset, y - xOffset); + ctx.lineTo(x - yOffset, y + xOffset); + break; + case 'star': + xOffset = Math.cos(rad) * radius; + yOffset = Math.sin(rad) * radius; + ctx.moveTo(x - xOffset, y - yOffset); + ctx.lineTo(x + xOffset, y + yOffset); + ctx.moveTo(x + yOffset, y - xOffset); + ctx.lineTo(x - yOffset, y + xOffset); + rad += QUARTER_PI; + xOffset = Math.cos(rad) * radius; + yOffset = Math.sin(rad) * radius; + ctx.moveTo(x - xOffset, y - yOffset); + ctx.lineTo(x + xOffset, y + yOffset); + ctx.moveTo(x + yOffset, y - xOffset); + ctx.lineTo(x - yOffset, y + xOffset); + break; + case 'line': + xOffset = Math.cos(rad) * radius; + yOffset = Math.sin(rad) * radius; + ctx.moveTo(x - xOffset, y - yOffset); + ctx.lineTo(x + xOffset, y + yOffset); + break; + case 'dash': + ctx.moveTo(x, y); + ctx.lineTo(x + Math.cos(rad) * radius, y + Math.sin(rad) * radius); + break; + } + + ctx.fill(); + ctx.stroke(); + }, + + /** + * Returns true if the point is inside the rectangle + * @param {object} point - The point to test + * @param {object} area - The rectangle + * @returns {boolean} + * @private + */ + _isPointInArea: function(point, area) { + var epsilon = 1e-6; // 1e-6 is margin in pixels for accumulated error. + + return point.x > area.left - epsilon && point.x < area.right + epsilon && + point.y > area.top - epsilon && point.y < area.bottom + epsilon; + }, + + clipArea: function(ctx, area) { + ctx.save(); + ctx.beginPath(); + ctx.rect(area.left, area.top, area.right - area.left, area.bottom - area.top); + ctx.clip(); + }, + + unclipArea: function(ctx) { + ctx.restore(); + }, + + lineTo: function(ctx, previous, target, flip) { + var stepped = target.steppedLine; + if (stepped) { + if (stepped === 'middle') { + var midpoint = (previous.x + target.x) / 2.0; + ctx.lineTo(midpoint, flip ? target.y : previous.y); + ctx.lineTo(midpoint, flip ? previous.y : target.y); + } else if ((stepped === 'after' && !flip) || (stepped !== 'after' && flip)) { + ctx.lineTo(previous.x, target.y); + } else { + ctx.lineTo(target.x, previous.y); + } + ctx.lineTo(target.x, target.y); + return; + } + + if (!target.tension) { + ctx.lineTo(target.x, target.y); + return; + } + + ctx.bezierCurveTo( + flip ? previous.controlPointPreviousX : previous.controlPointNextX, + flip ? previous.controlPointPreviousY : previous.controlPointNextY, + flip ? target.controlPointNextX : target.controlPointPreviousX, + flip ? target.controlPointNextY : target.controlPointPreviousY, + target.x, + target.y); + } +}; + +var helpers_canvas = exports$1; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use Chart.helpers.canvas.clear instead. + * @namespace Chart.helpers.clear + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers_core.clear = exports$1.clear; + +/** + * Provided for backward compatibility, use Chart.helpers.canvas.roundedRect instead. + * @namespace Chart.helpers.drawRoundedRectangle + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers_core.drawRoundedRectangle = function(ctx) { + ctx.beginPath(); + exports$1.roundedRect.apply(exports$1, arguments); +}; + +var defaults = { + /** + * @private + */ + _set: function(scope, values) { + return helpers_core.merge(this[scope] || (this[scope] = {}), values); + } +}; + +defaults._set('global', { + defaultColor: 'rgba(0,0,0,0.1)', + defaultFontColor: '#666', + defaultFontFamily: "'Helvetica Neue', 'Helvetica', 'Arial', sans-serif", + defaultFontSize: 12, + defaultFontStyle: 'normal', + defaultLineHeight: 1.2, + showLines: true +}); + +var core_defaults = defaults; + +var valueOrDefault = helpers_core.valueOrDefault; + +/** + * Converts the given font object into a CSS font string. + * @param {object} font - A font object. + * @return {string} The CSS font string. See https://developer.mozilla.org/en-US/docs/Web/CSS/font + * @private + */ +function toFontString(font) { + if (!font || helpers_core.isNullOrUndef(font.size) || helpers_core.isNullOrUndef(font.family)) { + return null; + } + + return (font.style ? font.style + ' ' : '') + + (font.weight ? font.weight + ' ' : '') + + font.size + 'px ' + + font.family; +} + +/** + * @alias Chart.helpers.options + * @namespace + */ +var helpers_options = { + /** + * Converts the given line height `value` in pixels for a specific font `size`. + * @param {number|string} value - The lineHeight to parse (eg. 1.6, '14px', '75%', '1.6em'). + * @param {number} size - The font size (in pixels) used to resolve relative `value`. + * @returns {number} The effective line height in pixels (size * 1.2 if value is invalid). + * @see https://developer.mozilla.org/en-US/docs/Web/CSS/line-height + * @since 2.7.0 + */ + toLineHeight: function(value, size) { + var matches = ('' + value).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/); + if (!matches || matches[1] === 'normal') { + return size * 1.2; + } + + value = +matches[2]; + + switch (matches[3]) { + case 'px': + return value; + case '%': + value /= 100; + break; + default: + break; + } + + return size * value; + }, + + /** + * Converts the given value into a padding object with pre-computed width/height. + * @param {number|object} value - If a number, set the value to all TRBL component, + * else, if and object, use defined properties and sets undefined ones to 0. + * @returns {object} The padding values (top, right, bottom, left, width, height) + * @since 2.7.0 + */ + toPadding: function(value) { + var t, r, b, l; + + if (helpers_core.isObject(value)) { + t = +value.top || 0; + r = +value.right || 0; + b = +value.bottom || 0; + l = +value.left || 0; + } else { + t = r = b = l = +value || 0; + } + + return { + top: t, + right: r, + bottom: b, + left: l, + height: t + b, + width: l + r + }; + }, + + /** + * Parses font options and returns the font object. + * @param {object} options - A object that contains font options to be parsed. + * @return {object} The font object. + * @todo Support font.* options and renamed to toFont(). + * @private + */ + _parseFont: function(options) { + var globalDefaults = core_defaults.global; + var size = valueOrDefault(options.fontSize, globalDefaults.defaultFontSize); + var font = { + family: valueOrDefault(options.fontFamily, globalDefaults.defaultFontFamily), + lineHeight: helpers_core.options.toLineHeight(valueOrDefault(options.lineHeight, globalDefaults.defaultLineHeight), size), + size: size, + style: valueOrDefault(options.fontStyle, globalDefaults.defaultFontStyle), + weight: null, + string: '' + }; + + font.string = toFontString(font); + return font; + }, + + /** + * Evaluates the given `inputs` sequentially and returns the first defined value. + * @param {Array} inputs - An array of values, falling back to the last value. + * @param {object} [context] - If defined and the current value is a function, the value + * is called with `context` as first argument and the result becomes the new input. + * @param {number} [index] - If defined and the current value is an array, the value + * at `index` become the new input. + * @since 2.7.0 + */ + resolve: function(inputs, context, index) { + var i, ilen, value; + + for (i = 0, ilen = inputs.length; i < ilen; ++i) { + value = inputs[i]; + if (value === undefined) { + continue; + } + if (context !== undefined && typeof value === 'function') { + value = value(context); + } + if (index !== undefined && helpers_core.isArray(value)) { + value = value[index]; + } + if (value !== undefined) { + return value; + } + } + } +}; + +var helpers$1 = helpers_core; +var easing = helpers_easing; +var canvas = helpers_canvas; +var options = helpers_options; +helpers$1.easing = easing; +helpers$1.canvas = canvas; +helpers$1.options = options; + +function interpolate(start, view, model, ease) { + var keys = Object.keys(model); + var i, ilen, key, actual, origin, target, type, c0, c1; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + + target = model[key]; + + // if a value is added to the model after pivot() has been called, the view + // doesn't contain it, so let's initialize the view to the target value. + if (!view.hasOwnProperty(key)) { + view[key] = target; + } + + actual = view[key]; + + if (actual === target || key[0] === '_') { + continue; + } + + if (!start.hasOwnProperty(key)) { + start[key] = actual; + } + + origin = start[key]; + + type = typeof target; + + if (type === typeof origin) { + if (type === 'string') { + c0 = chartjsColor(origin); + if (c0.valid) { + c1 = chartjsColor(target); + if (c1.valid) { + view[key] = c1.mix(c0, ease).rgbString(); + continue; + } + } + } else if (helpers$1.isFinite(origin) && helpers$1.isFinite(target)) { + view[key] = origin + (target - origin) * ease; + continue; + } + } + + view[key] = target; + } +} + +var Element = function(configuration) { + helpers$1.extend(this, configuration); + this.initialize.apply(this, arguments); +}; + +helpers$1.extend(Element.prototype, { + + initialize: function() { + this.hidden = false; + }, + + pivot: function() { + var me = this; + if (!me._view) { + me._view = helpers$1.clone(me._model); + } + me._start = {}; + return me; + }, + + transition: function(ease) { + var me = this; + var model = me._model; + var start = me._start; + var view = me._view; + + // No animation -> No Transition + if (!model || ease === 1) { + me._view = model; + me._start = null; + return me; + } + + if (!view) { + view = me._view = {}; + } + + if (!start) { + start = me._start = {}; + } + + interpolate(start, view, model, ease); + + return me; + }, + + tooltipPosition: function() { + return { + x: this._model.x, + y: this._model.y + }; + }, + + hasValue: function() { + return helpers$1.isNumber(this._model.x) && helpers$1.isNumber(this._model.y); + } +}); + +Element.extend = helpers$1.inherits; + +var core_element = Element; + +var exports$2 = core_element.extend({ + chart: null, // the animation associated chart instance + currentStep: 0, // the current animation step + numSteps: 60, // default number of steps + easing: '', // the easing to use for this animation + render: null, // render function used by the animation service + + onAnimationProgress: null, // user specified callback to fire on each step of the animation + onAnimationComplete: null, // user specified callback to fire when the animation finishes +}); + +var core_animation = exports$2; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use Chart.Animation instead + * @prop Chart.Animation#animationObject + * @deprecated since version 2.6.0 + * @todo remove at version 3 + */ +Object.defineProperty(exports$2.prototype, 'animationObject', { + get: function() { + return this; + } +}); + +/** + * Provided for backward compatibility, use Chart.Animation#chart instead + * @prop Chart.Animation#chartInstance + * @deprecated since version 2.6.0 + * @todo remove at version 3 + */ +Object.defineProperty(exports$2.prototype, 'chartInstance', { + get: function() { + return this.chart; + }, + set: function(value) { + this.chart = value; + } +}); + +core_defaults._set('global', { + animation: { + duration: 1000, + easing: 'easeOutQuart', + onProgress: helpers$1.noop, + onComplete: helpers$1.noop + } +}); + +var core_animations = { + animations: [], + request: null, + + /** + * @param {Chart} chart - The chart to animate. + * @param {Chart.Animation} animation - The animation that we will animate. + * @param {number} duration - The animation duration in ms. + * @param {boolean} lazy - if true, the chart is not marked as animating to enable more responsive interactions + */ + addAnimation: function(chart, animation, duration, lazy) { + var animations = this.animations; + var i, ilen; + + animation.chart = chart; + animation.startTime = Date.now(); + animation.duration = duration; + + if (!lazy) { + chart.animating = true; + } + + for (i = 0, ilen = animations.length; i < ilen; ++i) { + if (animations[i].chart === chart) { + animations[i] = animation; + return; + } + } + + animations.push(animation); + + // If there are no animations queued, manually kickstart a digest, for lack of a better word + if (animations.length === 1) { + this.requestAnimationFrame(); + } + }, + + cancelAnimation: function(chart) { + var index = helpers$1.findIndex(this.animations, function(animation) { + return animation.chart === chart; + }); + + if (index !== -1) { + this.animations.splice(index, 1); + chart.animating = false; + } + }, + + requestAnimationFrame: function() { + var me = this; + if (me.request === null) { + // Skip animation frame requests until the active one is executed. + // This can happen when processing mouse events, e.g. 'mousemove' + // and 'mouseout' events will trigger multiple renders. + me.request = helpers$1.requestAnimFrame.call(window, function() { + me.request = null; + me.startDigest(); + }); + } + }, + + /** + * @private + */ + startDigest: function() { + var me = this; + + me.advance(); + + // Do we have more stuff to animate? + if (me.animations.length > 0) { + me.requestAnimationFrame(); + } + }, + + /** + * @private + */ + advance: function() { + var animations = this.animations; + var animation, chart, numSteps, nextStep; + var i = 0; + + // 1 animation per chart, so we are looping charts here + while (i < animations.length) { + animation = animations[i]; + chart = animation.chart; + numSteps = animation.numSteps; + + // Make sure that currentStep starts at 1 + // https://github.com/chartjs/Chart.js/issues/6104 + nextStep = Math.floor((Date.now() - animation.startTime) / animation.duration * numSteps) + 1; + animation.currentStep = Math.min(nextStep, numSteps); + + helpers$1.callback(animation.render, [chart, animation], chart); + helpers$1.callback(animation.onAnimationProgress, [animation], chart); + + if (animation.currentStep >= numSteps) { + helpers$1.callback(animation.onAnimationComplete, [animation], chart); + chart.animating = false; + animations.splice(i, 1); + } else { + ++i; + } + } + } +}; + +var resolve = helpers$1.options.resolve; + +var arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift']; + +/** + * Hooks the array methods that add or remove values ('push', pop', 'shift', 'splice', + * 'unshift') and notify the listener AFTER the array has been altered. Listeners are + * called on the 'onData*' callbacks (e.g. onDataPush, etc.) with same arguments. + */ +function listenArrayEvents(array, listener) { + if (array._chartjs) { + array._chartjs.listeners.push(listener); + return; + } + + Object.defineProperty(array, '_chartjs', { + configurable: true, + enumerable: false, + value: { + listeners: [listener] + } + }); + + arrayEvents.forEach(function(key) { + var method = 'onData' + key.charAt(0).toUpperCase() + key.slice(1); + var base = array[key]; + + Object.defineProperty(array, key, { + configurable: true, + enumerable: false, + value: function() { + var args = Array.prototype.slice.call(arguments); + var res = base.apply(this, args); + + helpers$1.each(array._chartjs.listeners, function(object) { + if (typeof object[method] === 'function') { + object[method].apply(object, args); + } + }); + + return res; + } + }); + }); +} + +/** + * Removes the given array event listener and cleanup extra attached properties (such as + * the _chartjs stub and overridden methods) if array doesn't have any more listeners. + */ +function unlistenArrayEvents(array, listener) { + var stub = array._chartjs; + if (!stub) { + return; + } + + var listeners = stub.listeners; + var index = listeners.indexOf(listener); + if (index !== -1) { + listeners.splice(index, 1); + } + + if (listeners.length > 0) { + return; + } + + arrayEvents.forEach(function(key) { + delete array[key]; + }); + + delete array._chartjs; +} + +// Base class for all dataset controllers (line, bar, etc) +var DatasetController = function(chart, datasetIndex) { + this.initialize(chart, datasetIndex); +}; + +helpers$1.extend(DatasetController.prototype, { + + /** + * Element type used to generate a meta dataset (e.g. Chart.element.Line). + * @type {Chart.core.element} + */ + datasetElementType: null, + + /** + * Element type used to generate a meta data (e.g. Chart.element.Point). + * @type {Chart.core.element} + */ + dataElementType: null, + + initialize: function(chart, datasetIndex) { + var me = this; + me.chart = chart; + me.index = datasetIndex; + me.linkScales(); + me.addElements(); + }, + + updateIndex: function(datasetIndex) { + this.index = datasetIndex; + }, + + linkScales: function() { + var me = this; + var meta = me.getMeta(); + var dataset = me.getDataset(); + + if (meta.xAxisID === null || !(meta.xAxisID in me.chart.scales)) { + meta.xAxisID = dataset.xAxisID || me.chart.options.scales.xAxes[0].id; + } + if (meta.yAxisID === null || !(meta.yAxisID in me.chart.scales)) { + meta.yAxisID = dataset.yAxisID || me.chart.options.scales.yAxes[0].id; + } + }, + + getDataset: function() { + return this.chart.data.datasets[this.index]; + }, + + getMeta: function() { + return this.chart.getDatasetMeta(this.index); + }, + + getScaleForId: function(scaleID) { + return this.chart.scales[scaleID]; + }, + + /** + * @private + */ + _getValueScaleId: function() { + return this.getMeta().yAxisID; + }, + + /** + * @private + */ + _getIndexScaleId: function() { + return this.getMeta().xAxisID; + }, + + /** + * @private + */ + _getValueScale: function() { + return this.getScaleForId(this._getValueScaleId()); + }, + + /** + * @private + */ + _getIndexScale: function() { + return this.getScaleForId(this._getIndexScaleId()); + }, + + reset: function() { + this.update(true); + }, + + /** + * @private + */ + destroy: function() { + if (this._data) { + unlistenArrayEvents(this._data, this); + } + }, + + createMetaDataset: function() { + var me = this; + var type = me.datasetElementType; + return type && new type({ + _chart: me.chart, + _datasetIndex: me.index + }); + }, + + createMetaData: function(index) { + var me = this; + var type = me.dataElementType; + return type && new type({ + _chart: me.chart, + _datasetIndex: me.index, + _index: index + }); + }, + + addElements: function() { + var me = this; + var meta = me.getMeta(); + var data = me.getDataset().data || []; + var metaData = meta.data; + var i, ilen; + + for (i = 0, ilen = data.length; i < ilen; ++i) { + metaData[i] = metaData[i] || me.createMetaData(i); + } + + meta.dataset = meta.dataset || me.createMetaDataset(); + }, + + addElementAndReset: function(index) { + var element = this.createMetaData(index); + this.getMeta().data.splice(index, 0, element); + this.updateElement(element, index, true); + }, + + buildOrUpdateElements: function() { + var me = this; + var dataset = me.getDataset(); + var data = dataset.data || (dataset.data = []); + + // In order to correctly handle data addition/deletion animation (an thus simulate + // real-time charts), we need to monitor these data modifications and synchronize + // the internal meta data accordingly. + if (me._data !== data) { + if (me._data) { + // This case happens when the user replaced the data array instance. + unlistenArrayEvents(me._data, me); + } + + if (data && Object.isExtensible(data)) { + listenArrayEvents(data, me); + } + me._data = data; + } + + // Re-sync meta data in case the user replaced the data array or if we missed + // any updates and so make sure that we handle number of datapoints changing. + me.resyncElements(); + }, + + update: helpers$1.noop, + + transition: function(easingValue) { + var meta = this.getMeta(); + var elements = meta.data || []; + var ilen = elements.length; + var i = 0; + + for (; i < ilen; ++i) { + elements[i].transition(easingValue); + } + + if (meta.dataset) { + meta.dataset.transition(easingValue); + } + }, + + draw: function() { + var meta = this.getMeta(); + var elements = meta.data || []; + var ilen = elements.length; + var i = 0; + + if (meta.dataset) { + meta.dataset.draw(); + } + + for (; i < ilen; ++i) { + elements[i].draw(); + } + }, + + removeHoverStyle: function(element) { + helpers$1.merge(element._model, element.$previousStyle || {}); + delete element.$previousStyle; + }, + + setHoverStyle: function(element) { + var dataset = this.chart.data.datasets[element._datasetIndex]; + var index = element._index; + var custom = element.custom || {}; + var model = element._model; + var getHoverColor = helpers$1.getHoverColor; + + element.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth + }; + + model.backgroundColor = resolve([custom.hoverBackgroundColor, dataset.hoverBackgroundColor, getHoverColor(model.backgroundColor)], undefined, index); + model.borderColor = resolve([custom.hoverBorderColor, dataset.hoverBorderColor, getHoverColor(model.borderColor)], undefined, index); + model.borderWidth = resolve([custom.hoverBorderWidth, dataset.hoverBorderWidth, model.borderWidth], undefined, index); + }, + + /** + * @private + */ + resyncElements: function() { + var me = this; + var meta = me.getMeta(); + var data = me.getDataset().data; + var numMeta = meta.data.length; + var numData = data.length; + + if (numData < numMeta) { + meta.data.splice(numData, numMeta - numData); + } else if (numData > numMeta) { + me.insertElements(numMeta, numData - numMeta); + } + }, + + /** + * @private + */ + insertElements: function(start, count) { + for (var i = 0; i < count; ++i) { + this.addElementAndReset(start + i); + } + }, + + /** + * @private + */ + onDataPush: function() { + var count = arguments.length; + this.insertElements(this.getDataset().data.length - count, count); + }, + + /** + * @private + */ + onDataPop: function() { + this.getMeta().data.pop(); + }, + + /** + * @private + */ + onDataShift: function() { + this.getMeta().data.shift(); + }, + + /** + * @private + */ + onDataSplice: function(start, count) { + this.getMeta().data.splice(start, count); + this.insertElements(start, arguments.length - 2); + }, + + /** + * @private + */ + onDataUnshift: function() { + this.insertElements(0, arguments.length); + } +}); + +DatasetController.extend = helpers$1.inherits; + +var core_datasetController = DatasetController; + +core_defaults._set('global', { + elements: { + arc: { + backgroundColor: core_defaults.global.defaultColor, + borderColor: '#fff', + borderWidth: 2, + borderAlign: 'center' + } + } +}); + +var element_arc = core_element.extend({ + inLabelRange: function(mouseX) { + var vm = this._view; + + if (vm) { + return (Math.pow(mouseX - vm.x, 2) < Math.pow(vm.radius + vm.hoverRadius, 2)); + } + return false; + }, + + inRange: function(chartX, chartY) { + var vm = this._view; + + if (vm) { + var pointRelativePosition = helpers$1.getAngleFromPoint(vm, {x: chartX, y: chartY}); + var angle = pointRelativePosition.angle; + var distance = pointRelativePosition.distance; + + // Sanitise angle range + var startAngle = vm.startAngle; + var endAngle = vm.endAngle; + while (endAngle < startAngle) { + endAngle += 2.0 * Math.PI; + } + while (angle > endAngle) { + angle -= 2.0 * Math.PI; + } + while (angle < startAngle) { + angle += 2.0 * Math.PI; + } + + // Check if within the range of the open/close angle + var betweenAngles = (angle >= startAngle && angle <= endAngle); + var withinRadius = (distance >= vm.innerRadius && distance <= vm.outerRadius); + + return (betweenAngles && withinRadius); + } + return false; + }, + + getCenterPoint: function() { + var vm = this._view; + var halfAngle = (vm.startAngle + vm.endAngle) / 2; + var halfRadius = (vm.innerRadius + vm.outerRadius) / 2; + return { + x: vm.x + Math.cos(halfAngle) * halfRadius, + y: vm.y + Math.sin(halfAngle) * halfRadius + }; + }, + + getArea: function() { + var vm = this._view; + return Math.PI * ((vm.endAngle - vm.startAngle) / (2 * Math.PI)) * (Math.pow(vm.outerRadius, 2) - Math.pow(vm.innerRadius, 2)); + }, + + tooltipPosition: function() { + var vm = this._view; + var centreAngle = vm.startAngle + ((vm.endAngle - vm.startAngle) / 2); + var rangeFromCentre = (vm.outerRadius - vm.innerRadius) / 2 + vm.innerRadius; + + return { + x: vm.x + (Math.cos(centreAngle) * rangeFromCentre), + y: vm.y + (Math.sin(centreAngle) * rangeFromCentre) + }; + }, + + draw: function() { + var ctx = this._chart.ctx; + var vm = this._view; + var sA = vm.startAngle; + var eA = vm.endAngle; + var pixelMargin = (vm.borderAlign === 'inner') ? 0.33 : 0; + var angleMargin; + + ctx.save(); + + ctx.beginPath(); + ctx.arc(vm.x, vm.y, Math.max(vm.outerRadius - pixelMargin, 0), sA, eA); + ctx.arc(vm.x, vm.y, vm.innerRadius, eA, sA, true); + ctx.closePath(); + + ctx.fillStyle = vm.backgroundColor; + ctx.fill(); + + if (vm.borderWidth) { + if (vm.borderAlign === 'inner') { + // Draw an inner border by cliping the arc and drawing a double-width border + // Enlarge the clipping arc by 0.33 pixels to eliminate glitches between borders + ctx.beginPath(); + angleMargin = pixelMargin / vm.outerRadius; + ctx.arc(vm.x, vm.y, vm.outerRadius, sA - angleMargin, eA + angleMargin); + if (vm.innerRadius > pixelMargin) { + angleMargin = pixelMargin / vm.innerRadius; + ctx.arc(vm.x, vm.y, vm.innerRadius - pixelMargin, eA + angleMargin, sA - angleMargin, true); + } else { + ctx.arc(vm.x, vm.y, pixelMargin, eA + Math.PI / 2, sA - Math.PI / 2); + } + ctx.closePath(); + ctx.clip(); + + ctx.beginPath(); + ctx.arc(vm.x, vm.y, vm.outerRadius, sA, eA); + ctx.arc(vm.x, vm.y, vm.innerRadius, eA, sA, true); + ctx.closePath(); + + ctx.lineWidth = vm.borderWidth * 2; + ctx.lineJoin = 'round'; + } else { + ctx.lineWidth = vm.borderWidth; + ctx.lineJoin = 'bevel'; + } + + ctx.strokeStyle = vm.borderColor; + ctx.stroke(); + } + + ctx.restore(); + } +}); + +var valueOrDefault$1 = helpers$1.valueOrDefault; + +var defaultColor = core_defaults.global.defaultColor; + +core_defaults._set('global', { + elements: { + line: { + tension: 0.4, + backgroundColor: defaultColor, + borderWidth: 3, + borderColor: defaultColor, + borderCapStyle: 'butt', + borderDash: [], + borderDashOffset: 0.0, + borderJoinStyle: 'miter', + capBezierPoints: true, + fill: true, // do we fill in the area between the line and its base axis + } + } +}); + +var element_line = core_element.extend({ + draw: function() { + var me = this; + var vm = me._view; + var ctx = me._chart.ctx; + var spanGaps = vm.spanGaps; + var points = me._children.slice(); // clone array + var globalDefaults = core_defaults.global; + var globalOptionLineElements = globalDefaults.elements.line; + var lastDrawnIndex = -1; + var index, current, previous, currentVM; + + // If we are looping, adding the first point again + if (me._loop && points.length) { + points.push(points[0]); + } + + ctx.save(); + + // Stroke Line Options + ctx.lineCap = vm.borderCapStyle || globalOptionLineElements.borderCapStyle; + + // IE 9 and 10 do not support line dash + if (ctx.setLineDash) { + ctx.setLineDash(vm.borderDash || globalOptionLineElements.borderDash); + } + + ctx.lineDashOffset = valueOrDefault$1(vm.borderDashOffset, globalOptionLineElements.borderDashOffset); + ctx.lineJoin = vm.borderJoinStyle || globalOptionLineElements.borderJoinStyle; + ctx.lineWidth = valueOrDefault$1(vm.borderWidth, globalOptionLineElements.borderWidth); + ctx.strokeStyle = vm.borderColor || globalDefaults.defaultColor; + + // Stroke Line + ctx.beginPath(); + lastDrawnIndex = -1; + + for (index = 0; index < points.length; ++index) { + current = points[index]; + previous = helpers$1.previousItem(points, index); + currentVM = current._view; + + // First point moves to it's starting position no matter what + if (index === 0) { + if (!currentVM.skip) { + ctx.moveTo(currentVM.x, currentVM.y); + lastDrawnIndex = index; + } + } else { + previous = lastDrawnIndex === -1 ? previous : points[lastDrawnIndex]; + + if (!currentVM.skip) { + if ((lastDrawnIndex !== (index - 1) && !spanGaps) || lastDrawnIndex === -1) { + // There was a gap and this is the first point after the gap + ctx.moveTo(currentVM.x, currentVM.y); + } else { + // Line to next point + helpers$1.canvas.lineTo(ctx, previous._view, current._view); + } + lastDrawnIndex = index; + } + } + } + + ctx.stroke(); + ctx.restore(); + } +}); + +var valueOrDefault$2 = helpers$1.valueOrDefault; + +var defaultColor$1 = core_defaults.global.defaultColor; + +core_defaults._set('global', { + elements: { + point: { + radius: 3, + pointStyle: 'circle', + backgroundColor: defaultColor$1, + borderColor: defaultColor$1, + borderWidth: 1, + // Hover + hitRadius: 1, + hoverRadius: 4, + hoverBorderWidth: 1 + } + } +}); + +function xRange(mouseX) { + var vm = this._view; + return vm ? (Math.abs(mouseX - vm.x) < vm.radius + vm.hitRadius) : false; +} + +function yRange(mouseY) { + var vm = this._view; + return vm ? (Math.abs(mouseY - vm.y) < vm.radius + vm.hitRadius) : false; +} + +var element_point = core_element.extend({ + inRange: function(mouseX, mouseY) { + var vm = this._view; + return vm ? ((Math.pow(mouseX - vm.x, 2) + Math.pow(mouseY - vm.y, 2)) < Math.pow(vm.hitRadius + vm.radius, 2)) : false; + }, + + inLabelRange: xRange, + inXRange: xRange, + inYRange: yRange, + + getCenterPoint: function() { + var vm = this._view; + return { + x: vm.x, + y: vm.y + }; + }, + + getArea: function() { + return Math.PI * Math.pow(this._view.radius, 2); + }, + + tooltipPosition: function() { + var vm = this._view; + return { + x: vm.x, + y: vm.y, + padding: vm.radius + vm.borderWidth + }; + }, + + draw: function(chartArea) { + var vm = this._view; + var ctx = this._chart.ctx; + var pointStyle = vm.pointStyle; + var rotation = vm.rotation; + var radius = vm.radius; + var x = vm.x; + var y = vm.y; + var globalDefaults = core_defaults.global; + var defaultColor = globalDefaults.defaultColor; // eslint-disable-line no-shadow + + if (vm.skip) { + return; + } + + // Clipping for Points. + if (chartArea === undefined || helpers$1.canvas._isPointInArea(vm, chartArea)) { + ctx.strokeStyle = vm.borderColor || defaultColor; + ctx.lineWidth = valueOrDefault$2(vm.borderWidth, globalDefaults.elements.point.borderWidth); + ctx.fillStyle = vm.backgroundColor || defaultColor; + helpers$1.canvas.drawPoint(ctx, pointStyle, radius, x, y, rotation); + } + } +}); + +var defaultColor$2 = core_defaults.global.defaultColor; + +core_defaults._set('global', { + elements: { + rectangle: { + backgroundColor: defaultColor$2, + borderColor: defaultColor$2, + borderSkipped: 'bottom', + borderWidth: 0 + } + } +}); + +function isVertical(vm) { + return vm && vm.width !== undefined; +} + +/** + * Helper function to get the bounds of the bar regardless of the orientation + * @param bar {Chart.Element.Rectangle} the bar + * @return {Bounds} bounds of the bar + * @private + */ +function getBarBounds(vm) { + var x1, x2, y1, y2, half; + + if (isVertical(vm)) { + half = vm.width / 2; + x1 = vm.x - half; + x2 = vm.x + half; + y1 = Math.min(vm.y, vm.base); + y2 = Math.max(vm.y, vm.base); + } else { + half = vm.height / 2; + x1 = Math.min(vm.x, vm.base); + x2 = Math.max(vm.x, vm.base); + y1 = vm.y - half; + y2 = vm.y + half; + } + + return { + left: x1, + top: y1, + right: x2, + bottom: y2 + }; +} + +function swap(orig, v1, v2) { + return orig === v1 ? v2 : orig === v2 ? v1 : orig; +} + +function parseBorderSkipped(vm) { + var edge = vm.borderSkipped; + var res = {}; + + if (!edge) { + return res; + } + + if (vm.horizontal) { + if (vm.base > vm.x) { + edge = swap(edge, 'left', 'right'); + } + } else if (vm.base < vm.y) { + edge = swap(edge, 'bottom', 'top'); + } + + res[edge] = true; + return res; +} + +function parseBorderWidth(vm, maxW, maxH) { + var value = vm.borderWidth; + var skip = parseBorderSkipped(vm); + var t, r, b, l; + + if (helpers$1.isObject(value)) { + t = +value.top || 0; + r = +value.right || 0; + b = +value.bottom || 0; + l = +value.left || 0; + } else { + t = r = b = l = +value || 0; + } + + return { + t: skip.top || (t < 0) ? 0 : t > maxH ? maxH : t, + r: skip.right || (r < 0) ? 0 : r > maxW ? maxW : r, + b: skip.bottom || (b < 0) ? 0 : b > maxH ? maxH : b, + l: skip.left || (l < 0) ? 0 : l > maxW ? maxW : l + }; +} + +function boundingRects(vm) { + var bounds = getBarBounds(vm); + var width = bounds.right - bounds.left; + var height = bounds.bottom - bounds.top; + var border = parseBorderWidth(vm, width / 2, height / 2); + + return { + outer: { + x: bounds.left, + y: bounds.top, + w: width, + h: height + }, + inner: { + x: bounds.left + border.l, + y: bounds.top + border.t, + w: width - border.l - border.r, + h: height - border.t - border.b + } + }; +} + +function inRange(vm, x, y) { + var skipX = x === null; + var skipY = y === null; + var bounds = !vm || (skipX && skipY) ? false : getBarBounds(vm); + + return bounds + && (skipX || x >= bounds.left && x <= bounds.right) + && (skipY || y >= bounds.top && y <= bounds.bottom); +} + +var element_rectangle = core_element.extend({ + draw: function() { + var ctx = this._chart.ctx; + var vm = this._view; + var rects = boundingRects(vm); + var outer = rects.outer; + var inner = rects.inner; + + ctx.fillStyle = vm.backgroundColor; + ctx.fillRect(outer.x, outer.y, outer.w, outer.h); + + if (outer.w === inner.w && outer.h === inner.h) { + return; + } + + ctx.save(); + ctx.beginPath(); + ctx.rect(outer.x, outer.y, outer.w, outer.h); + ctx.clip(); + ctx.fillStyle = vm.borderColor; + ctx.rect(inner.x, inner.y, inner.w, inner.h); + ctx.fill('evenodd'); + ctx.restore(); + }, + + height: function() { + var vm = this._view; + return vm.base - vm.y; + }, + + inRange: function(mouseX, mouseY) { + return inRange(this._view, mouseX, mouseY); + }, + + inLabelRange: function(mouseX, mouseY) { + var vm = this._view; + return isVertical(vm) + ? inRange(vm, mouseX, null) + : inRange(vm, null, mouseY); + }, + + inXRange: function(mouseX) { + return inRange(this._view, mouseX, null); + }, + + inYRange: function(mouseY) { + return inRange(this._view, null, mouseY); + }, + + getCenterPoint: function() { + var vm = this._view; + var x, y; + if (isVertical(vm)) { + x = vm.x; + y = (vm.y + vm.base) / 2; + } else { + x = (vm.x + vm.base) / 2; + y = vm.y; + } + + return {x: x, y: y}; + }, + + getArea: function() { + var vm = this._view; + + return isVertical(vm) + ? vm.width * Math.abs(vm.y - vm.base) + : vm.height * Math.abs(vm.x - vm.base); + }, + + tooltipPosition: function() { + var vm = this._view; + return { + x: vm.x, + y: vm.y + }; + } +}); + +var elements = {}; +var Arc = element_arc; +var Line = element_line; +var Point = element_point; +var Rectangle = element_rectangle; +elements.Arc = Arc; +elements.Line = Line; +elements.Point = Point; +elements.Rectangle = Rectangle; + +var resolve$1 = helpers$1.options.resolve; + +core_defaults._set('bar', { + hover: { + mode: 'label' + }, + + scales: { + xAxes: [{ + type: 'category', + categoryPercentage: 0.8, + barPercentage: 0.9, + offset: true, + gridLines: { + offsetGridLines: true + } + }], + + yAxes: [{ + type: 'linear' + }] + } +}); + +/** + * Computes the "optimal" sample size to maintain bars equally sized while preventing overlap. + * @private + */ +function computeMinSampleSize(scale, pixels) { + var min = scale.isHorizontal() ? scale.width : scale.height; + var ticks = scale.getTicks(); + var prev, curr, i, ilen; + + for (i = 1, ilen = pixels.length; i < ilen; ++i) { + min = Math.min(min, Math.abs(pixels[i] - pixels[i - 1])); + } + + for (i = 0, ilen = ticks.length; i < ilen; ++i) { + curr = scale.getPixelForTick(i); + min = i > 0 ? Math.min(min, curr - prev) : min; + prev = curr; + } + + return min; +} + +/** + * Computes an "ideal" category based on the absolute bar thickness or, if undefined or null, + * uses the smallest interval (see computeMinSampleSize) that prevents bar overlapping. This + * mode currently always generates bars equally sized (until we introduce scriptable options?). + * @private + */ +function computeFitCategoryTraits(index, ruler, options) { + var thickness = options.barThickness; + var count = ruler.stackCount; + var curr = ruler.pixels[index]; + var size, ratio; + + if (helpers$1.isNullOrUndef(thickness)) { + size = ruler.min * options.categoryPercentage; + ratio = options.barPercentage; + } else { + // When bar thickness is enforced, category and bar percentages are ignored. + // Note(SB): we could add support for relative bar thickness (e.g. barThickness: '50%') + // and deprecate barPercentage since this value is ignored when thickness is absolute. + size = thickness * count; + ratio = 1; + } + + return { + chunk: size / count, + ratio: ratio, + start: curr - (size / 2) + }; +} + +/** + * Computes an "optimal" category that globally arranges bars side by side (no gap when + * percentage options are 1), based on the previous and following categories. This mode + * generates bars with different widths when data are not evenly spaced. + * @private + */ +function computeFlexCategoryTraits(index, ruler, options) { + var pixels = ruler.pixels; + var curr = pixels[index]; + var prev = index > 0 ? pixels[index - 1] : null; + var next = index < pixels.length - 1 ? pixels[index + 1] : null; + var percent = options.categoryPercentage; + var start, size; + + if (prev === null) { + // first data: its size is double based on the next point or, + // if it's also the last data, we use the scale size. + prev = curr - (next === null ? ruler.end - ruler.start : next - curr); + } + + if (next === null) { + // last data: its size is also double based on the previous point. + next = curr + curr - prev; + } + + start = curr - (curr - Math.min(prev, next)) / 2 * percent; + size = Math.abs(next - prev) / 2 * percent; + + return { + chunk: size / ruler.stackCount, + ratio: options.barPercentage, + start: start + }; +} + +var controller_bar = core_datasetController.extend({ + + dataElementType: elements.Rectangle, + + initialize: function() { + var me = this; + var meta; + + core_datasetController.prototype.initialize.apply(me, arguments); + + meta = me.getMeta(); + meta.stack = me.getDataset().stack; + meta.bar = true; + }, + + update: function(reset) { + var me = this; + var rects = me.getMeta().data; + var i, ilen; + + me._ruler = me.getRuler(); + + for (i = 0, ilen = rects.length; i < ilen; ++i) { + me.updateElement(rects[i], i, reset); + } + }, + + updateElement: function(rectangle, index, reset) { + var me = this; + var meta = me.getMeta(); + var dataset = me.getDataset(); + var options = me._resolveElementOptions(rectangle, index); + + rectangle._xScale = me.getScaleForId(meta.xAxisID); + rectangle._yScale = me.getScaleForId(meta.yAxisID); + rectangle._datasetIndex = me.index; + rectangle._index = index; + rectangle._model = { + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderSkipped: options.borderSkipped, + borderWidth: options.borderWidth, + datasetLabel: dataset.label, + label: me.chart.data.labels[index] + }; + + me._updateElementGeometry(rectangle, index, reset); + + rectangle.pivot(); + }, + + /** + * @private + */ + _updateElementGeometry: function(rectangle, index, reset) { + var me = this; + var model = rectangle._model; + var vscale = me._getValueScale(); + var base = vscale.getBasePixel(); + var horizontal = vscale.isHorizontal(); + var ruler = me._ruler || me.getRuler(); + var vpixels = me.calculateBarValuePixels(me.index, index); + var ipixels = me.calculateBarIndexPixels(me.index, index, ruler); + + model.horizontal = horizontal; + model.base = reset ? base : vpixels.base; + model.x = horizontal ? reset ? base : vpixels.head : ipixels.center; + model.y = horizontal ? ipixels.center : reset ? base : vpixels.head; + model.height = horizontal ? ipixels.size : undefined; + model.width = horizontal ? undefined : ipixels.size; + }, + + /** + * Returns the stacks based on groups and bar visibility. + * @param {number} [last] - The dataset index + * @returns {string[]} The list of stack IDs + * @private + */ + _getStacks: function(last) { + var me = this; + var chart = me.chart; + var scale = me._getIndexScale(); + var stacked = scale.options.stacked; + var ilen = last === undefined ? chart.data.datasets.length : last + 1; + var stacks = []; + var i, meta; + + for (i = 0; i < ilen; ++i) { + meta = chart.getDatasetMeta(i); + if (meta.bar && chart.isDatasetVisible(i) && + (stacked === false || + (stacked === true && stacks.indexOf(meta.stack) === -1) || + (stacked === undefined && (meta.stack === undefined || stacks.indexOf(meta.stack) === -1)))) { + stacks.push(meta.stack); + } + } + + return stacks; + }, + + /** + * Returns the effective number of stacks based on groups and bar visibility. + * @private + */ + getStackCount: function() { + return this._getStacks().length; + }, + + /** + * Returns the stack index for the given dataset based on groups and bar visibility. + * @param {number} [datasetIndex] - The dataset index + * @param {string} [name] - The stack name to find + * @returns {number} The stack index + * @private + */ + getStackIndex: function(datasetIndex, name) { + var stacks = this._getStacks(datasetIndex); + var index = (name !== undefined) + ? stacks.indexOf(name) + : -1; // indexOf returns -1 if element is not present + + return (index === -1) + ? stacks.length - 1 + : index; + }, + + /** + * @private + */ + getRuler: function() { + var me = this; + var scale = me._getIndexScale(); + var stackCount = me.getStackCount(); + var datasetIndex = me.index; + var isHorizontal = scale.isHorizontal(); + var start = isHorizontal ? scale.left : scale.top; + var end = start + (isHorizontal ? scale.width : scale.height); + var pixels = []; + var i, ilen, min; + + for (i = 0, ilen = me.getMeta().data.length; i < ilen; ++i) { + pixels.push(scale.getPixelForValue(null, i, datasetIndex)); + } + + min = helpers$1.isNullOrUndef(scale.options.barThickness) + ? computeMinSampleSize(scale, pixels) + : -1; + + return { + min: min, + pixels: pixels, + start: start, + end: end, + stackCount: stackCount, + scale: scale + }; + }, + + /** + * Note: pixel values are not clamped to the scale area. + * @private + */ + calculateBarValuePixels: function(datasetIndex, index) { + var me = this; + var chart = me.chart; + var meta = me.getMeta(); + var scale = me._getValueScale(); + var isHorizontal = scale.isHorizontal(); + var datasets = chart.data.datasets; + var value = +scale.getRightValue(datasets[datasetIndex].data[index]); + var minBarLength = scale.options.minBarLength; + var stacked = scale.options.stacked; + var stack = meta.stack; + var start = 0; + var i, imeta, ivalue, base, head, size; + + if (stacked || (stacked === undefined && stack !== undefined)) { + for (i = 0; i < datasetIndex; ++i) { + imeta = chart.getDatasetMeta(i); + + if (imeta.bar && + imeta.stack === stack && + imeta.controller._getValueScaleId() === scale.id && + chart.isDatasetVisible(i)) { + + ivalue = +scale.getRightValue(datasets[i].data[index]); + if ((value < 0 && ivalue < 0) || (value >= 0 && ivalue > 0)) { + start += ivalue; + } + } + } + } + + base = scale.getPixelForValue(start); + head = scale.getPixelForValue(start + value); + size = head - base; + + if (minBarLength !== undefined && Math.abs(size) < minBarLength) { + size = minBarLength; + if (value >= 0 && !isHorizontal || value < 0 && isHorizontal) { + head = base - minBarLength; + } else { + head = base + minBarLength; + } + } + + return { + size: size, + base: base, + head: head, + center: head + size / 2 + }; + }, + + /** + * @private + */ + calculateBarIndexPixels: function(datasetIndex, index, ruler) { + var me = this; + var options = ruler.scale.options; + var range = options.barThickness === 'flex' + ? computeFlexCategoryTraits(index, ruler, options) + : computeFitCategoryTraits(index, ruler, options); + + var stackIndex = me.getStackIndex(datasetIndex, me.getMeta().stack); + var center = range.start + (range.chunk * stackIndex) + (range.chunk / 2); + var size = Math.min( + helpers$1.valueOrDefault(options.maxBarThickness, Infinity), + range.chunk * range.ratio); + + return { + base: center - size / 2, + head: center + size / 2, + center: center, + size: size + }; + }, + + draw: function() { + var me = this; + var chart = me.chart; + var scale = me._getValueScale(); + var rects = me.getMeta().data; + var dataset = me.getDataset(); + var ilen = rects.length; + var i = 0; + + helpers$1.canvas.clipArea(chart.ctx, chart.chartArea); + + for (; i < ilen; ++i) { + if (!isNaN(scale.getRightValue(dataset.data[i]))) { + rects[i].draw(); + } + } + + helpers$1.canvas.unclipArea(chart.ctx); + }, + + /** + * @private + */ + _resolveElementOptions: function(rectangle, index) { + var me = this; + var chart = me.chart; + var datasets = chart.data.datasets; + var dataset = datasets[me.index]; + var custom = rectangle.custom || {}; + var options = chart.options.elements.rectangle; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var keys = [ + 'backgroundColor', + 'borderColor', + 'borderSkipped', + 'borderWidth' + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$1([ + custom[key], + dataset[key], + options[key] + ], context, index); + } + + return values; + } +}); + +var valueOrDefault$3 = helpers$1.valueOrDefault; +var resolve$2 = helpers$1.options.resolve; + +core_defaults._set('bubble', { + hover: { + mode: 'single' + }, + + scales: { + xAxes: [{ + type: 'linear', // bubble should probably use a linear scale by default + position: 'bottom', + id: 'x-axis-0' // need an ID so datasets can reference the scale + }], + yAxes: [{ + type: 'linear', + position: 'left', + id: 'y-axis-0' + }] + }, + + tooltips: { + callbacks: { + title: function() { + // Title doesn't make sense for scatter since we format the data as a point + return ''; + }, + label: function(item, data) { + var datasetLabel = data.datasets[item.datasetIndex].label || ''; + var dataPoint = data.datasets[item.datasetIndex].data[item.index]; + return datasetLabel + ': (' + item.xLabel + ', ' + item.yLabel + ', ' + dataPoint.r + ')'; + } + } + } +}); + +var controller_bubble = core_datasetController.extend({ + /** + * @protected + */ + dataElementType: elements.Point, + + /** + * @protected + */ + update: function(reset) { + var me = this; + var meta = me.getMeta(); + var points = meta.data; + + // Update Points + helpers$1.each(points, function(point, index) { + me.updateElement(point, index, reset); + }); + }, + + /** + * @protected + */ + updateElement: function(point, index, reset) { + var me = this; + var meta = me.getMeta(); + var custom = point.custom || {}; + var xScale = me.getScaleForId(meta.xAxisID); + var yScale = me.getScaleForId(meta.yAxisID); + var options = me._resolveElementOptions(point, index); + var data = me.getDataset().data[index]; + var dsIndex = me.index; + + var x = reset ? xScale.getPixelForDecimal(0.5) : xScale.getPixelForValue(typeof data === 'object' ? data : NaN, index, dsIndex); + var y = reset ? yScale.getBasePixel() : yScale.getPixelForValue(data, index, dsIndex); + + point._xScale = xScale; + point._yScale = yScale; + point._options = options; + point._datasetIndex = dsIndex; + point._index = index; + point._model = { + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderWidth: options.borderWidth, + hitRadius: options.hitRadius, + pointStyle: options.pointStyle, + rotation: options.rotation, + radius: reset ? 0 : options.radius, + skip: custom.skip || isNaN(x) || isNaN(y), + x: x, + y: y, + }; + + point.pivot(); + }, + + /** + * @protected + */ + setHoverStyle: function(point) { + var model = point._model; + var options = point._options; + var getHoverColor = helpers$1.getHoverColor; + + point.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth, + radius: model.radius + }; + + model.backgroundColor = valueOrDefault$3(options.hoverBackgroundColor, getHoverColor(options.backgroundColor)); + model.borderColor = valueOrDefault$3(options.hoverBorderColor, getHoverColor(options.borderColor)); + model.borderWidth = valueOrDefault$3(options.hoverBorderWidth, options.borderWidth); + model.radius = options.radius + options.hoverRadius; + }, + + /** + * @private + */ + _resolveElementOptions: function(point, index) { + var me = this; + var chart = me.chart; + var datasets = chart.data.datasets; + var dataset = datasets[me.index]; + var custom = point.custom || {}; + var options = chart.options.elements.point; + var data = dataset.data[index]; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var keys = [ + 'backgroundColor', + 'borderColor', + 'borderWidth', + 'hoverBackgroundColor', + 'hoverBorderColor', + 'hoverBorderWidth', + 'hoverRadius', + 'hitRadius', + 'pointStyle', + 'rotation' + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$2([ + custom[key], + dataset[key], + options[key] + ], context, index); + } + + // Custom radius resolution + values.radius = resolve$2([ + custom.radius, + data ? data.r : undefined, + dataset.radius, + options.radius + ], context, index); + + return values; + } +}); + +var resolve$3 = helpers$1.options.resolve; +var valueOrDefault$4 = helpers$1.valueOrDefault; + +core_defaults._set('doughnut', { + animation: { + // Boolean - Whether we animate the rotation of the Doughnut + animateRotate: true, + // Boolean - Whether we animate scaling the Doughnut from the centre + animateScale: false + }, + hover: { + mode: 'single' + }, + legendCallback: function(chart) { + var text = []; + text.push('
    '); + + var data = chart.data; + var datasets = data.datasets; + var labels = data.labels; + + if (datasets.length) { + for (var i = 0; i < datasets[0].data.length; ++i) { + text.push('
  • '); + if (labels[i]) { + text.push(labels[i]); + } + text.push('
  • '); + } + } + + text.push('
'); + return text.join(''); + }, + legend: { + labels: { + generateLabels: function(chart) { + var data = chart.data; + if (data.labels.length && data.datasets.length) { + return data.labels.map(function(label, i) { + var meta = chart.getDatasetMeta(0); + var ds = data.datasets[0]; + var arc = meta.data[i]; + var custom = arc && arc.custom || {}; + var arcOpts = chart.options.elements.arc; + var fill = resolve$3([custom.backgroundColor, ds.backgroundColor, arcOpts.backgroundColor], undefined, i); + var stroke = resolve$3([custom.borderColor, ds.borderColor, arcOpts.borderColor], undefined, i); + var bw = resolve$3([custom.borderWidth, ds.borderWidth, arcOpts.borderWidth], undefined, i); + + return { + text: label, + fillStyle: fill, + strokeStyle: stroke, + lineWidth: bw, + hidden: isNaN(ds.data[i]) || meta.data[i].hidden, + + // Extra data used for toggling the correct item + index: i + }; + }); + } + return []; + } + }, + + onClick: function(e, legendItem) { + var index = legendItem.index; + var chart = this.chart; + var i, ilen, meta; + + for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) { + meta = chart.getDatasetMeta(i); + // toggle visibility of index if exists + if (meta.data[index]) { + meta.data[index].hidden = !meta.data[index].hidden; + } + } + + chart.update(); + } + }, + + // The percentage of the chart that we cut out of the middle. + cutoutPercentage: 50, + + // The rotation of the chart, where the first data arc begins. + rotation: Math.PI * -0.5, + + // The total circumference of the chart. + circumference: Math.PI * 2.0, + + // Need to override these to give a nice default + tooltips: { + callbacks: { + title: function() { + return ''; + }, + label: function(tooltipItem, data) { + var dataLabel = data.labels[tooltipItem.index]; + var value = ': ' + data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index]; + + if (helpers$1.isArray(dataLabel)) { + // show value on first line of multiline label + // need to clone because we are changing the value + dataLabel = dataLabel.slice(); + dataLabel[0] += value; + } else { + dataLabel += value; + } + + return dataLabel; + } + } + } +}); + +var controller_doughnut = core_datasetController.extend({ + + dataElementType: elements.Arc, + + linkScales: helpers$1.noop, + + // Get index of the dataset in relation to the visible datasets. This allows determining the inner and outer radius correctly + getRingIndex: function(datasetIndex) { + var ringIndex = 0; + + for (var j = 0; j < datasetIndex; ++j) { + if (this.chart.isDatasetVisible(j)) { + ++ringIndex; + } + } + + return ringIndex; + }, + + update: function(reset) { + var me = this; + var chart = me.chart; + var chartArea = chart.chartArea; + var opts = chart.options; + var availableWidth = chartArea.right - chartArea.left; + var availableHeight = chartArea.bottom - chartArea.top; + var minSize = Math.min(availableWidth, availableHeight); + var offset = {x: 0, y: 0}; + var meta = me.getMeta(); + var arcs = meta.data; + var cutoutPercentage = opts.cutoutPercentage; + var circumference = opts.circumference; + var chartWeight = me._getRingWeight(me.index); + var i, ilen; + + // If the chart's circumference isn't a full circle, calculate minSize as a ratio of the width/height of the arc + if (circumference < Math.PI * 2.0) { + var startAngle = opts.rotation % (Math.PI * 2.0); + startAngle += Math.PI * 2.0 * (startAngle >= Math.PI ? -1 : startAngle < -Math.PI ? 1 : 0); + var endAngle = startAngle + circumference; + var start = {x: Math.cos(startAngle), y: Math.sin(startAngle)}; + var end = {x: Math.cos(endAngle), y: Math.sin(endAngle)}; + var contains0 = (startAngle <= 0 && endAngle >= 0) || (startAngle <= Math.PI * 2.0 && Math.PI * 2.0 <= endAngle); + var contains90 = (startAngle <= Math.PI * 0.5 && Math.PI * 0.5 <= endAngle) || (startAngle <= Math.PI * 2.5 && Math.PI * 2.5 <= endAngle); + var contains180 = (startAngle <= -Math.PI && -Math.PI <= endAngle) || (startAngle <= Math.PI && Math.PI <= endAngle); + var contains270 = (startAngle <= -Math.PI * 0.5 && -Math.PI * 0.5 <= endAngle) || (startAngle <= Math.PI * 1.5 && Math.PI * 1.5 <= endAngle); + var cutout = cutoutPercentage / 100.0; + 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))}; + 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))}; + var size = {width: (max.x - min.x) * 0.5, height: (max.y - min.y) * 0.5}; + minSize = Math.min(availableWidth / size.width, availableHeight / size.height); + offset = {x: (max.x + min.x) * -0.5, y: (max.y + min.y) * -0.5}; + } + + for (i = 0, ilen = arcs.length; i < ilen; ++i) { + arcs[i]._options = me._resolveElementOptions(arcs[i], i); + } + + chart.borderWidth = me.getMaxBorderWidth(); + chart.outerRadius = Math.max((minSize - chart.borderWidth) / 2, 0); + chart.innerRadius = Math.max(cutoutPercentage ? (chart.outerRadius / 100) * (cutoutPercentage) : 0, 0); + chart.radiusLength = (chart.outerRadius - chart.innerRadius) / (me._getVisibleDatasetWeightTotal() || 1); + chart.offsetX = offset.x * chart.outerRadius; + chart.offsetY = offset.y * chart.outerRadius; + + meta.total = me.calculateTotal(); + + me.outerRadius = chart.outerRadius - chart.radiusLength * me._getRingWeightOffset(me.index); + me.innerRadius = Math.max(me.outerRadius - chart.radiusLength * chartWeight, 0); + + for (i = 0, ilen = arcs.length; i < ilen; ++i) { + me.updateElement(arcs[i], i, reset); + } + }, + + updateElement: function(arc, index, reset) { + var me = this; + var chart = me.chart; + var chartArea = chart.chartArea; + var opts = chart.options; + var animationOpts = opts.animation; + var centerX = (chartArea.left + chartArea.right) / 2; + var centerY = (chartArea.top + chartArea.bottom) / 2; + var startAngle = opts.rotation; // non reset case handled later + var endAngle = opts.rotation; // non reset case handled later + var dataset = me.getDataset(); + var circumference = reset && animationOpts.animateRotate ? 0 : arc.hidden ? 0 : me.calculateCircumference(dataset.data[index]) * (opts.circumference / (2.0 * Math.PI)); + var innerRadius = reset && animationOpts.animateScale ? 0 : me.innerRadius; + var outerRadius = reset && animationOpts.animateScale ? 0 : me.outerRadius; + var options = arc._options || {}; + + helpers$1.extend(arc, { + // Utility + _datasetIndex: me.index, + _index: index, + + // Desired view properties + _model: { + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderWidth: options.borderWidth, + borderAlign: options.borderAlign, + x: centerX + chart.offsetX, + y: centerY + chart.offsetY, + startAngle: startAngle, + endAngle: endAngle, + circumference: circumference, + outerRadius: outerRadius, + innerRadius: innerRadius, + label: helpers$1.valueAtIndexOrDefault(dataset.label, index, chart.data.labels[index]) + } + }); + + var model = arc._model; + + // Set correct angles if not resetting + if (!reset || !animationOpts.animateRotate) { + if (index === 0) { + model.startAngle = opts.rotation; + } else { + model.startAngle = me.getMeta().data[index - 1]._model.endAngle; + } + + model.endAngle = model.startAngle + model.circumference; + } + + arc.pivot(); + }, + + calculateTotal: function() { + var dataset = this.getDataset(); + var meta = this.getMeta(); + var total = 0; + var value; + + helpers$1.each(meta.data, function(element, index) { + value = dataset.data[index]; + if (!isNaN(value) && !element.hidden) { + total += Math.abs(value); + } + }); + + /* if (total === 0) { + total = NaN; + }*/ + + return total; + }, + + calculateCircumference: function(value) { + var total = this.getMeta().total; + if (total > 0 && !isNaN(value)) { + return (Math.PI * 2.0) * (Math.abs(value) / total); + } + return 0; + }, + + // gets the max border or hover width to properly scale pie charts + getMaxBorderWidth: function(arcs) { + var me = this; + var max = 0; + var chart = me.chart; + var i, ilen, meta, arc, controller, options, borderWidth, hoverWidth; + + if (!arcs) { + // Find the outmost visible dataset + for (i = 0, ilen = chart.data.datasets.length; i < ilen; ++i) { + if (chart.isDatasetVisible(i)) { + meta = chart.getDatasetMeta(i); + arcs = meta.data; + if (i !== me.index) { + controller = meta.controller; + } + break; + } + } + } + + if (!arcs) { + return 0; + } + + for (i = 0, ilen = arcs.length; i < ilen; ++i) { + arc = arcs[i]; + options = controller ? controller._resolveElementOptions(arc, i) : arc._options; + if (options.borderAlign !== 'inner') { + borderWidth = options.borderWidth; + hoverWidth = options.hoverBorderWidth; + + max = borderWidth > max ? borderWidth : max; + max = hoverWidth > max ? hoverWidth : max; + } + } + return max; + }, + + /** + * @protected + */ + setHoverStyle: function(arc) { + var model = arc._model; + var options = arc._options; + var getHoverColor = helpers$1.getHoverColor; + + arc.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth, + }; + + model.backgroundColor = valueOrDefault$4(options.hoverBackgroundColor, getHoverColor(options.backgroundColor)); + model.borderColor = valueOrDefault$4(options.hoverBorderColor, getHoverColor(options.borderColor)); + model.borderWidth = valueOrDefault$4(options.hoverBorderWidth, options.borderWidth); + }, + + /** + * @private + */ + _resolveElementOptions: function(arc, index) { + var me = this; + var chart = me.chart; + var dataset = me.getDataset(); + var custom = arc.custom || {}; + var options = chart.options.elements.arc; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var keys = [ + 'backgroundColor', + 'borderColor', + 'borderWidth', + 'borderAlign', + 'hoverBackgroundColor', + 'hoverBorderColor', + 'hoverBorderWidth', + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$3([ + custom[key], + dataset[key], + options[key] + ], context, index); + } + + return values; + }, + + /** + * Get radius length offset of the dataset in relation to the visible datasets weights. This allows determining the inner and outer radius correctly + * @private + */ + _getRingWeightOffset: function(datasetIndex) { + var ringWeightOffset = 0; + + for (var i = 0; i < datasetIndex; ++i) { + if (this.chart.isDatasetVisible(i)) { + ringWeightOffset += this._getRingWeight(i); + } + } + + return ringWeightOffset; + }, + + /** + * @private + */ + _getRingWeight: function(dataSetIndex) { + return Math.max(valueOrDefault$4(this.chart.data.datasets[dataSetIndex].weight, 1), 0); + }, + + /** + * Returns the sum of all visibile data set weights. This value can be 0. + * @private + */ + _getVisibleDatasetWeightTotal: function() { + return this._getRingWeightOffset(this.chart.data.datasets.length); + } +}); + +core_defaults._set('horizontalBar', { + hover: { + mode: 'index', + axis: 'y' + }, + + scales: { + xAxes: [{ + type: 'linear', + position: 'bottom' + }], + + yAxes: [{ + type: 'category', + position: 'left', + categoryPercentage: 0.8, + barPercentage: 0.9, + offset: true, + gridLines: { + offsetGridLines: true + } + }] + }, + + elements: { + rectangle: { + borderSkipped: 'left' + } + }, + + tooltips: { + mode: 'index', + axis: 'y' + } +}); + +var controller_horizontalBar = controller_bar.extend({ + /** + * @private + */ + _getValueScaleId: function() { + return this.getMeta().xAxisID; + }, + + /** + * @private + */ + _getIndexScaleId: function() { + return this.getMeta().yAxisID; + } +}); + +var valueOrDefault$5 = helpers$1.valueOrDefault; +var resolve$4 = helpers$1.options.resolve; +var isPointInArea = helpers$1.canvas._isPointInArea; + +core_defaults._set('line', { + showLines: true, + spanGaps: false, + + hover: { + mode: 'label' + }, + + scales: { + xAxes: [{ + type: 'category', + id: 'x-axis-0' + }], + yAxes: [{ + type: 'linear', + id: 'y-axis-0' + }] + } +}); + +function lineEnabled(dataset, options) { + return valueOrDefault$5(dataset.showLine, options.showLines); +} + +var controller_line = core_datasetController.extend({ + + datasetElementType: elements.Line, + + dataElementType: elements.Point, + + update: function(reset) { + var me = this; + var meta = me.getMeta(); + var line = meta.dataset; + var points = meta.data || []; + var scale = me.getScaleForId(meta.yAxisID); + var dataset = me.getDataset(); + var showLine = lineEnabled(dataset, me.chart.options); + var i, ilen; + + // Update Line + if (showLine) { + // Compatibility: If the properties are defined with only the old name, use those values + if ((dataset.tension !== undefined) && (dataset.lineTension === undefined)) { + dataset.lineTension = dataset.tension; + } + + // Utility + line._scale = scale; + line._datasetIndex = me.index; + // Data + line._children = points; + // Model + line._model = me._resolveLineOptions(line); + + line.pivot(); + } + + // Update Points + for (i = 0, ilen = points.length; i < ilen; ++i) { + me.updateElement(points[i], i, reset); + } + + if (showLine && line._model.tension !== 0) { + me.updateBezierControlPoints(); + } + + // Now pivot the point for animation + for (i = 0, ilen = points.length; i < ilen; ++i) { + points[i].pivot(); + } + }, + + updateElement: function(point, index, reset) { + var me = this; + var meta = me.getMeta(); + var custom = point.custom || {}; + var dataset = me.getDataset(); + var datasetIndex = me.index; + var value = dataset.data[index]; + var yScale = me.getScaleForId(meta.yAxisID); + var xScale = me.getScaleForId(meta.xAxisID); + var lineModel = meta.dataset._model; + var x, y; + + var options = me._resolvePointOptions(point, index); + + x = xScale.getPixelForValue(typeof value === 'object' ? value : NaN, index, datasetIndex); + y = reset ? yScale.getBasePixel() : me.calculatePointY(value, index, datasetIndex); + + // Utility + point._xScale = xScale; + point._yScale = yScale; + point._options = options; + point._datasetIndex = datasetIndex; + point._index = index; + + // Desired view properties + point._model = { + x: x, + y: y, + skip: custom.skip || isNaN(x) || isNaN(y), + // Appearance + radius: options.radius, + pointStyle: options.pointStyle, + rotation: options.rotation, + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderWidth: options.borderWidth, + tension: valueOrDefault$5(custom.tension, lineModel ? lineModel.tension : 0), + steppedLine: lineModel ? lineModel.steppedLine : false, + // Tooltip + hitRadius: options.hitRadius + }; + }, + + /** + * @private + */ + _resolvePointOptions: function(element, index) { + var me = this; + var chart = me.chart; + var dataset = chart.data.datasets[me.index]; + var custom = element.custom || {}; + var options = chart.options.elements.point; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var ELEMENT_OPTIONS = { + backgroundColor: 'pointBackgroundColor', + borderColor: 'pointBorderColor', + borderWidth: 'pointBorderWidth', + hitRadius: 'pointHitRadius', + hoverBackgroundColor: 'pointHoverBackgroundColor', + hoverBorderColor: 'pointHoverBorderColor', + hoverBorderWidth: 'pointHoverBorderWidth', + hoverRadius: 'pointHoverRadius', + pointStyle: 'pointStyle', + radius: 'pointRadius', + rotation: 'pointRotation' + }; + var keys = Object.keys(ELEMENT_OPTIONS); + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$4([ + custom[key], + dataset[ELEMENT_OPTIONS[key]], + dataset[key], + options[key] + ], context, index); + } + + return values; + }, + + /** + * @private + */ + _resolveLineOptions: function(element) { + var me = this; + var chart = me.chart; + var dataset = chart.data.datasets[me.index]; + var custom = element.custom || {}; + var options = chart.options; + var elementOptions = options.elements.line; + var values = {}; + var i, ilen, key; + + var keys = [ + 'backgroundColor', + 'borderWidth', + 'borderColor', + 'borderCapStyle', + 'borderDash', + 'borderDashOffset', + 'borderJoinStyle', + 'fill', + 'cubicInterpolationMode' + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$4([ + custom[key], + dataset[key], + elementOptions[key] + ]); + } + + // The default behavior of lines is to break at null values, according + // to https://github.com/chartjs/Chart.js/issues/2435#issuecomment-216718158 + // This option gives lines the ability to span gaps + values.spanGaps = valueOrDefault$5(dataset.spanGaps, options.spanGaps); + values.tension = valueOrDefault$5(dataset.lineTension, elementOptions.tension); + values.steppedLine = resolve$4([custom.steppedLine, dataset.steppedLine, elementOptions.stepped]); + + return values; + }, + + calculatePointY: function(value, index, datasetIndex) { + var me = this; + var chart = me.chart; + var meta = me.getMeta(); + var yScale = me.getScaleForId(meta.yAxisID); + var sumPos = 0; + var sumNeg = 0; + var i, ds, dsMeta; + + if (yScale.options.stacked) { + for (i = 0; i < datasetIndex; i++) { + ds = chart.data.datasets[i]; + dsMeta = chart.getDatasetMeta(i); + if (dsMeta.type === 'line' && dsMeta.yAxisID === yScale.id && chart.isDatasetVisible(i)) { + var stackedRightValue = Number(yScale.getRightValue(ds.data[index])); + if (stackedRightValue < 0) { + sumNeg += stackedRightValue || 0; + } else { + sumPos += stackedRightValue || 0; + } + } + } + + var rightValue = Number(yScale.getRightValue(value)); + if (rightValue < 0) { + return yScale.getPixelForValue(sumNeg + rightValue); + } + return yScale.getPixelForValue(sumPos + rightValue); + } + + return yScale.getPixelForValue(value); + }, + + updateBezierControlPoints: function() { + var me = this; + var chart = me.chart; + var meta = me.getMeta(); + var lineModel = meta.dataset._model; + var area = chart.chartArea; + var points = meta.data || []; + var i, ilen, model, controlPoints; + + // Only consider points that are drawn in case the spanGaps option is used + if (lineModel.spanGaps) { + points = points.filter(function(pt) { + return !pt._model.skip; + }); + } + + function capControlPoint(pt, min, max) { + return Math.max(Math.min(pt, max), min); + } + + if (lineModel.cubicInterpolationMode === 'monotone') { + helpers$1.splineCurveMonotone(points); + } else { + for (i = 0, ilen = points.length; i < ilen; ++i) { + model = points[i]._model; + controlPoints = helpers$1.splineCurve( + helpers$1.previousItem(points, i)._model, + model, + helpers$1.nextItem(points, i)._model, + lineModel.tension + ); + model.controlPointPreviousX = controlPoints.previous.x; + model.controlPointPreviousY = controlPoints.previous.y; + model.controlPointNextX = controlPoints.next.x; + model.controlPointNextY = controlPoints.next.y; + } + } + + if (chart.options.elements.line.capBezierPoints) { + for (i = 0, ilen = points.length; i < ilen; ++i) { + model = points[i]._model; + if (isPointInArea(model, area)) { + if (i > 0 && isPointInArea(points[i - 1]._model, area)) { + model.controlPointPreviousX = capControlPoint(model.controlPointPreviousX, area.left, area.right); + model.controlPointPreviousY = capControlPoint(model.controlPointPreviousY, area.top, area.bottom); + } + if (i < points.length - 1 && isPointInArea(points[i + 1]._model, area)) { + model.controlPointNextX = capControlPoint(model.controlPointNextX, area.left, area.right); + model.controlPointNextY = capControlPoint(model.controlPointNextY, area.top, area.bottom); + } + } + } + } + }, + + draw: function() { + var me = this; + var chart = me.chart; + var meta = me.getMeta(); + var points = meta.data || []; + var area = chart.chartArea; + var ilen = points.length; + var halfBorderWidth; + var i = 0; + + if (lineEnabled(me.getDataset(), chart.options)) { + halfBorderWidth = (meta.dataset._model.borderWidth || 0) / 2; + + helpers$1.canvas.clipArea(chart.ctx, { + left: area.left, + right: area.right, + top: area.top - halfBorderWidth, + bottom: area.bottom + halfBorderWidth + }); + + meta.dataset.draw(); + + helpers$1.canvas.unclipArea(chart.ctx); + } + + // Draw the points + for (; i < ilen; ++i) { + points[i].draw(area); + } + }, + + /** + * @protected + */ + setHoverStyle: function(point) { + var model = point._model; + var options = point._options; + var getHoverColor = helpers$1.getHoverColor; + + point.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth, + radius: model.radius + }; + + model.backgroundColor = valueOrDefault$5(options.hoverBackgroundColor, getHoverColor(options.backgroundColor)); + model.borderColor = valueOrDefault$5(options.hoverBorderColor, getHoverColor(options.borderColor)); + model.borderWidth = valueOrDefault$5(options.hoverBorderWidth, options.borderWidth); + model.radius = valueOrDefault$5(options.hoverRadius, options.radius); + }, +}); + +var resolve$5 = helpers$1.options.resolve; + +core_defaults._set('polarArea', { + scale: { + type: 'radialLinear', + angleLines: { + display: false + }, + gridLines: { + circular: true + }, + pointLabels: { + display: false + }, + ticks: { + beginAtZero: true + } + }, + + // Boolean - Whether to animate the rotation of the chart + animation: { + animateRotate: true, + animateScale: true + }, + + startAngle: -0.5 * Math.PI, + legendCallback: function(chart) { + var text = []; + text.push('
    '); + + var data = chart.data; + var datasets = data.datasets; + var labels = data.labels; + + if (datasets.length) { + for (var i = 0; i < datasets[0].data.length; ++i) { + text.push('
  • '); + if (labels[i]) { + text.push(labels[i]); + } + text.push('
  • '); + } + } + + text.push('
'); + return text.join(''); + }, + legend: { + labels: { + generateLabels: function(chart) { + var data = chart.data; + if (data.labels.length && data.datasets.length) { + return data.labels.map(function(label, i) { + var meta = chart.getDatasetMeta(0); + var ds = data.datasets[0]; + var arc = meta.data[i]; + var custom = arc.custom || {}; + var arcOpts = chart.options.elements.arc; + var fill = resolve$5([custom.backgroundColor, ds.backgroundColor, arcOpts.backgroundColor], undefined, i); + var stroke = resolve$5([custom.borderColor, ds.borderColor, arcOpts.borderColor], undefined, i); + var bw = resolve$5([custom.borderWidth, ds.borderWidth, arcOpts.borderWidth], undefined, i); + + return { + text: label, + fillStyle: fill, + strokeStyle: stroke, + lineWidth: bw, + hidden: isNaN(ds.data[i]) || meta.data[i].hidden, + + // Extra data used for toggling the correct item + index: i + }; + }); + } + return []; + } + }, + + onClick: function(e, legendItem) { + var index = legendItem.index; + var chart = this.chart; + var i, ilen, meta; + + for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) { + meta = chart.getDatasetMeta(i); + meta.data[index].hidden = !meta.data[index].hidden; + } + + chart.update(); + } + }, + + // Need to override these to give a nice default + tooltips: { + callbacks: { + title: function() { + return ''; + }, + label: function(item, data) { + return data.labels[item.index] + ': ' + item.yLabel; + } + } + } +}); + +var controller_polarArea = core_datasetController.extend({ + + dataElementType: elements.Arc, + + linkScales: helpers$1.noop, + + update: function(reset) { + var me = this; + var dataset = me.getDataset(); + var meta = me.getMeta(); + var start = me.chart.options.startAngle || 0; + var starts = me._starts = []; + var angles = me._angles = []; + var arcs = meta.data; + var i, ilen, angle; + + me._updateRadius(); + + meta.count = me.countVisibleElements(); + + for (i = 0, ilen = dataset.data.length; i < ilen; i++) { + starts[i] = start; + angle = me._computeAngle(i); + angles[i] = angle; + start += angle; + } + + for (i = 0, ilen = arcs.length; i < ilen; ++i) { + arcs[i]._options = me._resolveElementOptions(arcs[i], i); + me.updateElement(arcs[i], i, reset); + } + }, + + /** + * @private + */ + _updateRadius: function() { + var me = this; + var chart = me.chart; + var chartArea = chart.chartArea; + var opts = chart.options; + var minSize = Math.min(chartArea.right - chartArea.left, chartArea.bottom - chartArea.top); + + chart.outerRadius = Math.max(minSize / 2, 0); + chart.innerRadius = Math.max(opts.cutoutPercentage ? (chart.outerRadius / 100) * (opts.cutoutPercentage) : 1, 0); + chart.radiusLength = (chart.outerRadius - chart.innerRadius) / chart.getVisibleDatasetCount(); + + me.outerRadius = chart.outerRadius - (chart.radiusLength * me.index); + me.innerRadius = me.outerRadius - chart.radiusLength; + }, + + updateElement: function(arc, index, reset) { + var me = this; + var chart = me.chart; + var dataset = me.getDataset(); + var opts = chart.options; + var animationOpts = opts.animation; + var scale = chart.scale; + var labels = chart.data.labels; + + var centerX = scale.xCenter; + var centerY = scale.yCenter; + + // var negHalfPI = -0.5 * Math.PI; + var datasetStartAngle = opts.startAngle; + var distance = arc.hidden ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]); + var startAngle = me._starts[index]; + var endAngle = startAngle + (arc.hidden ? 0 : me._angles[index]); + + var resetRadius = animationOpts.animateScale ? 0 : scale.getDistanceFromCenterForValue(dataset.data[index]); + var options = arc._options || {}; + + helpers$1.extend(arc, { + // Utility + _datasetIndex: me.index, + _index: index, + _scale: scale, + + // Desired view properties + _model: { + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderWidth: options.borderWidth, + borderAlign: options.borderAlign, + x: centerX, + y: centerY, + innerRadius: 0, + outerRadius: reset ? resetRadius : distance, + startAngle: reset && animationOpts.animateRotate ? datasetStartAngle : startAngle, + endAngle: reset && animationOpts.animateRotate ? datasetStartAngle : endAngle, + label: helpers$1.valueAtIndexOrDefault(labels, index, labels[index]) + } + }); + + arc.pivot(); + }, + + countVisibleElements: function() { + var dataset = this.getDataset(); + var meta = this.getMeta(); + var count = 0; + + helpers$1.each(meta.data, function(element, index) { + if (!isNaN(dataset.data[index]) && !element.hidden) { + count++; + } + }); + + return count; + }, + + /** + * @protected + */ + setHoverStyle: function(arc) { + var model = arc._model; + var options = arc._options; + var getHoverColor = helpers$1.getHoverColor; + var valueOrDefault = helpers$1.valueOrDefault; + + arc.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth, + }; + + model.backgroundColor = valueOrDefault(options.hoverBackgroundColor, getHoverColor(options.backgroundColor)); + model.borderColor = valueOrDefault(options.hoverBorderColor, getHoverColor(options.borderColor)); + model.borderWidth = valueOrDefault(options.hoverBorderWidth, options.borderWidth); + }, + + /** + * @private + */ + _resolveElementOptions: function(arc, index) { + var me = this; + var chart = me.chart; + var dataset = me.getDataset(); + var custom = arc.custom || {}; + var options = chart.options.elements.arc; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var keys = [ + 'backgroundColor', + 'borderColor', + 'borderWidth', + 'borderAlign', + 'hoverBackgroundColor', + 'hoverBorderColor', + 'hoverBorderWidth', + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$5([ + custom[key], + dataset[key], + options[key] + ], context, index); + } + + return values; + }, + + /** + * @private + */ + _computeAngle: function(index) { + var me = this; + var count = this.getMeta().count; + var dataset = me.getDataset(); + var meta = me.getMeta(); + + if (isNaN(dataset.data[index]) || meta.data[index].hidden) { + return 0; + } + + // Scriptable options + var context = { + chart: me.chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + return resolve$5([ + me.chart.options.elements.arc.angle, + (2 * Math.PI) / count + ], context, index); + } +}); + +core_defaults._set('pie', helpers$1.clone(core_defaults.doughnut)); +core_defaults._set('pie', { + cutoutPercentage: 0 +}); + +// Pie charts are Doughnut chart with different defaults +var controller_pie = controller_doughnut; + +var valueOrDefault$6 = helpers$1.valueOrDefault; +var resolve$6 = helpers$1.options.resolve; + +core_defaults._set('radar', { + scale: { + type: 'radialLinear' + }, + elements: { + line: { + tension: 0 // no bezier in radar + } + } +}); + +var controller_radar = core_datasetController.extend({ + + datasetElementType: elements.Line, + + dataElementType: elements.Point, + + linkScales: helpers$1.noop, + + update: function(reset) { + var me = this; + var meta = me.getMeta(); + var line = meta.dataset; + var points = meta.data || []; + var scale = me.chart.scale; + var dataset = me.getDataset(); + var i, ilen; + + // Compatibility: If the properties are defined with only the old name, use those values + if ((dataset.tension !== undefined) && (dataset.lineTension === undefined)) { + dataset.lineTension = dataset.tension; + } + + // Utility + line._scale = scale; + line._datasetIndex = me.index; + // Data + line._children = points; + line._loop = true; + // Model + line._model = me._resolveLineOptions(line); + + line.pivot(); + + // Update Points + for (i = 0, ilen = points.length; i < ilen; ++i) { + me.updateElement(points[i], i, reset); + } + + // Update bezier control points + me.updateBezierControlPoints(); + + // Now pivot the point for animation + for (i = 0, ilen = points.length; i < ilen; ++i) { + points[i].pivot(); + } + }, + + updateElement: function(point, index, reset) { + var me = this; + var custom = point.custom || {}; + var dataset = me.getDataset(); + var scale = me.chart.scale; + var pointPosition = scale.getPointPositionForValue(index, dataset.data[index]); + var options = me._resolvePointOptions(point, index); + var lineModel = me.getMeta().dataset._model; + var x = reset ? scale.xCenter : pointPosition.x; + var y = reset ? scale.yCenter : pointPosition.y; + + // Utility + point._scale = scale; + point._options = options; + point._datasetIndex = me.index; + point._index = index; + + // Desired view properties + point._model = { + x: x, // value not used in dataset scale, but we want a consistent API between scales + y: y, + skip: custom.skip || isNaN(x) || isNaN(y), + // Appearance + radius: options.radius, + pointStyle: options.pointStyle, + rotation: options.rotation, + backgroundColor: options.backgroundColor, + borderColor: options.borderColor, + borderWidth: options.borderWidth, + tension: valueOrDefault$6(custom.tension, lineModel ? lineModel.tension : 0), + + // Tooltip + hitRadius: options.hitRadius + }; + }, + + /** + * @private + */ + _resolvePointOptions: function(element, index) { + var me = this; + var chart = me.chart; + var dataset = chart.data.datasets[me.index]; + var custom = element.custom || {}; + var options = chart.options.elements.point; + var values = {}; + var i, ilen, key; + + // Scriptable options + var context = { + chart: chart, + dataIndex: index, + dataset: dataset, + datasetIndex: me.index + }; + + var ELEMENT_OPTIONS = { + backgroundColor: 'pointBackgroundColor', + borderColor: 'pointBorderColor', + borderWidth: 'pointBorderWidth', + hitRadius: 'pointHitRadius', + hoverBackgroundColor: 'pointHoverBackgroundColor', + hoverBorderColor: 'pointHoverBorderColor', + hoverBorderWidth: 'pointHoverBorderWidth', + hoverRadius: 'pointHoverRadius', + pointStyle: 'pointStyle', + radius: 'pointRadius', + rotation: 'pointRotation' + }; + var keys = Object.keys(ELEMENT_OPTIONS); + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$6([ + custom[key], + dataset[ELEMENT_OPTIONS[key]], + dataset[key], + options[key] + ], context, index); + } + + return values; + }, + + /** + * @private + */ + _resolveLineOptions: function(element) { + var me = this; + var chart = me.chart; + var dataset = chart.data.datasets[me.index]; + var custom = element.custom || {}; + var options = chart.options.elements.line; + var values = {}; + var i, ilen, key; + + var keys = [ + 'backgroundColor', + 'borderWidth', + 'borderColor', + 'borderCapStyle', + 'borderDash', + 'borderDashOffset', + 'borderJoinStyle', + 'fill' + ]; + + for (i = 0, ilen = keys.length; i < ilen; ++i) { + key = keys[i]; + values[key] = resolve$6([ + custom[key], + dataset[key], + options[key] + ]); + } + + values.tension = valueOrDefault$6(dataset.lineTension, options.tension); + + return values; + }, + + updateBezierControlPoints: function() { + var me = this; + var meta = me.getMeta(); + var area = me.chart.chartArea; + var points = meta.data || []; + var i, ilen, model, controlPoints; + + function capControlPoint(pt, min, max) { + return Math.max(Math.min(pt, max), min); + } + + for (i = 0, ilen = points.length; i < ilen; ++i) { + model = points[i]._model; + controlPoints = helpers$1.splineCurve( + helpers$1.previousItem(points, i, true)._model, + model, + helpers$1.nextItem(points, i, true)._model, + model.tension + ); + + // Prevent the bezier going outside of the bounds of the graph + model.controlPointPreviousX = capControlPoint(controlPoints.previous.x, area.left, area.right); + model.controlPointPreviousY = capControlPoint(controlPoints.previous.y, area.top, area.bottom); + model.controlPointNextX = capControlPoint(controlPoints.next.x, area.left, area.right); + model.controlPointNextY = capControlPoint(controlPoints.next.y, area.top, area.bottom); + } + }, + + setHoverStyle: function(point) { + var model = point._model; + var options = point._options; + var getHoverColor = helpers$1.getHoverColor; + + point.$previousStyle = { + backgroundColor: model.backgroundColor, + borderColor: model.borderColor, + borderWidth: model.borderWidth, + radius: model.radius + }; + + model.backgroundColor = valueOrDefault$6(options.hoverBackgroundColor, getHoverColor(options.backgroundColor)); + model.borderColor = valueOrDefault$6(options.hoverBorderColor, getHoverColor(options.borderColor)); + model.borderWidth = valueOrDefault$6(options.hoverBorderWidth, options.borderWidth); + model.radius = valueOrDefault$6(options.hoverRadius, options.radius); + } +}); + +core_defaults._set('scatter', { + hover: { + mode: 'single' + }, + + scales: { + xAxes: [{ + id: 'x-axis-1', // need an ID so datasets can reference the scale + type: 'linear', // scatter should not use a category axis + position: 'bottom' + }], + yAxes: [{ + id: 'y-axis-1', + type: 'linear', + position: 'left' + }] + }, + + showLines: false, + + tooltips: { + callbacks: { + title: function() { + return ''; // doesn't make sense for scatter since data are formatted as a point + }, + label: function(item) { + return '(' + item.xLabel + ', ' + item.yLabel + ')'; + } + } + } +}); + +// Scatter charts use line controllers +var controller_scatter = controller_line; + +// NOTE export a map in which the key represents the controller type, not +// the class, and so must be CamelCase in order to be correctly retrieved +// by the controller in core.controller.js (`controllers[meta.type]`). + +var controllers = { + bar: controller_bar, + bubble: controller_bubble, + doughnut: controller_doughnut, + horizontalBar: controller_horizontalBar, + line: controller_line, + polarArea: controller_polarArea, + pie: controller_pie, + radar: controller_radar, + scatter: controller_scatter +}; + +/** + * Helper function to get relative position for an event + * @param {Event|IEvent} event - The event to get the position for + * @param {Chart} chart - The chart + * @returns {object} the event position + */ +function getRelativePosition(e, chart) { + if (e.native) { + return { + x: e.x, + y: e.y + }; + } + + return helpers$1.getRelativePosition(e, chart); +} + +/** + * Helper function to traverse all of the visible elements in the chart + * @param {Chart} chart - the chart + * @param {function} handler - the callback to execute for each visible item + */ +function parseVisibleItems(chart, handler) { + var datasets = chart.data.datasets; + var meta, i, j, ilen, jlen; + + for (i = 0, ilen = datasets.length; i < ilen; ++i) { + if (!chart.isDatasetVisible(i)) { + continue; + } + + meta = chart.getDatasetMeta(i); + for (j = 0, jlen = meta.data.length; j < jlen; ++j) { + var element = meta.data[j]; + if (!element._view.skip) { + handler(element); + } + } + } +} + +/** + * Helper function to get the items that intersect the event position + * @param {ChartElement[]} items - elements to filter + * @param {object} position - the point to be nearest to + * @return {ChartElement[]} the nearest items + */ +function getIntersectItems(chart, position) { + var elements = []; + + parseVisibleItems(chart, function(element) { + if (element.inRange(position.x, position.y)) { + elements.push(element); + } + }); + + return elements; +} + +/** + * Helper function to get the items nearest to the event position considering all visible items in teh chart + * @param {Chart} chart - the chart to look at elements from + * @param {object} position - the point to be nearest to + * @param {boolean} intersect - if true, only consider items that intersect the position + * @param {function} distanceMetric - function to provide the distance between points + * @return {ChartElement[]} the nearest items + */ +function getNearestItems(chart, position, intersect, distanceMetric) { + var minDistance = Number.POSITIVE_INFINITY; + var nearestItems = []; + + parseVisibleItems(chart, function(element) { + if (intersect && !element.inRange(position.x, position.y)) { + return; + } + + var center = element.getCenterPoint(); + var distance = distanceMetric(position, center); + if (distance < minDistance) { + nearestItems = [element]; + minDistance = distance; + } else if (distance === minDistance) { + // Can have multiple items at the same distance in which case we sort by size + nearestItems.push(element); + } + }); + + return nearestItems; +} + +/** + * Get a distance metric function for two points based on the + * axis mode setting + * @param {string} axis - the axis mode. x|y|xy + */ +function getDistanceMetricForAxis(axis) { + var useX = axis.indexOf('x') !== -1; + var useY = axis.indexOf('y') !== -1; + + return function(pt1, pt2) { + var deltaX = useX ? Math.abs(pt1.x - pt2.x) : 0; + var deltaY = useY ? Math.abs(pt1.y - pt2.y) : 0; + return Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2)); + }; +} + +function indexMode(chart, e, options) { + var position = getRelativePosition(e, chart); + // Default axis for index mode is 'x' to match old behaviour + options.axis = options.axis || 'x'; + var distanceMetric = getDistanceMetricForAxis(options.axis); + var items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric); + var elements = []; + + if (!items.length) { + return []; + } + + chart.data.datasets.forEach(function(dataset, datasetIndex) { + if (chart.isDatasetVisible(datasetIndex)) { + var meta = chart.getDatasetMeta(datasetIndex); + var element = meta.data[items[0]._index]; + + // don't count items that are skipped (null data) + if (element && !element._view.skip) { + elements.push(element); + } + } + }); + + return elements; +} + +/** + * @interface IInteractionOptions + */ +/** + * If true, only consider items that intersect the point + * @name IInterfaceOptions#boolean + * @type Boolean + */ + +/** + * Contains interaction related functions + * @namespace Chart.Interaction + */ +var core_interaction = { + // Helper function for different modes + modes: { + single: function(chart, e) { + var position = getRelativePosition(e, chart); + var elements = []; + + parseVisibleItems(chart, function(element) { + if (element.inRange(position.x, position.y)) { + elements.push(element); + return elements; + } + }); + + return elements.slice(0, 1); + }, + + /** + * @function Chart.Interaction.modes.label + * @deprecated since version 2.4.0 + * @todo remove at version 3 + * @private + */ + label: indexMode, + + /** + * Returns items at the same index. If the options.intersect parameter is true, we only return items if we intersect something + * If the options.intersect mode is false, we find the nearest item and return the items at the same index as that item + * @function Chart.Interaction.modes.index + * @since v2.4.0 + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @param {IInteractionOptions} options - options to use during interaction + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + index: indexMode, + + /** + * Returns items in the same dataset. If the options.intersect parameter is true, we only return items if we intersect something + * If the options.intersect is false, we find the nearest item and return the items in that dataset + * @function Chart.Interaction.modes.dataset + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @param {IInteractionOptions} options - options to use during interaction + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + dataset: function(chart, e, options) { + var position = getRelativePosition(e, chart); + options.axis = options.axis || 'xy'; + var distanceMetric = getDistanceMetricForAxis(options.axis); + var items = options.intersect ? getIntersectItems(chart, position) : getNearestItems(chart, position, false, distanceMetric); + + if (items.length > 0) { + items = chart.getDatasetMeta(items[0]._datasetIndex).data; + } + + return items; + }, + + /** + * @function Chart.Interaction.modes.x-axis + * @deprecated since version 2.4.0. Use index mode and intersect == true + * @todo remove at version 3 + * @private + */ + 'x-axis': function(chart, e) { + return indexMode(chart, e, {intersect: false}); + }, + + /** + * Point mode returns all elements that hit test based on the event position + * of the event + * @function Chart.Interaction.modes.intersect + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + point: function(chart, e) { + var position = getRelativePosition(e, chart); + return getIntersectItems(chart, position); + }, + + /** + * nearest mode returns the element closest to the point + * @function Chart.Interaction.modes.intersect + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @param {IInteractionOptions} options - options to use + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + nearest: function(chart, e, options) { + var position = getRelativePosition(e, chart); + options.axis = options.axis || 'xy'; + var distanceMetric = getDistanceMetricForAxis(options.axis); + return getNearestItems(chart, position, options.intersect, distanceMetric); + }, + + /** + * x mode returns the elements that hit-test at the current x coordinate + * @function Chart.Interaction.modes.x + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @param {IInteractionOptions} options - options to use + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + x: function(chart, e, options) { + var position = getRelativePosition(e, chart); + var items = []; + var intersectsItem = false; + + parseVisibleItems(chart, function(element) { + if (element.inXRange(position.x)) { + items.push(element); + } + + if (element.inRange(position.x, position.y)) { + intersectsItem = true; + } + }); + + // If we want to trigger on an intersect and we don't have any items + // that intersect the position, return nothing + if (options.intersect && !intersectsItem) { + items = []; + } + return items; + }, + + /** + * y mode returns the elements that hit-test at the current y coordinate + * @function Chart.Interaction.modes.y + * @param {Chart} chart - the chart we are returning items from + * @param {Event} e - the event we are find things at + * @param {IInteractionOptions} options - options to use + * @return {Chart.Element[]} Array of elements that are under the point. If none are found, an empty array is returned + */ + y: function(chart, e, options) { + var position = getRelativePosition(e, chart); + var items = []; + var intersectsItem = false; + + parseVisibleItems(chart, function(element) { + if (element.inYRange(position.y)) { + items.push(element); + } + + if (element.inRange(position.x, position.y)) { + intersectsItem = true; + } + }); + + // If we want to trigger on an intersect and we don't have any items + // that intersect the position, return nothing + if (options.intersect && !intersectsItem) { + items = []; + } + return items; + } + } +}; + +function filterByPosition(array, position) { + return helpers$1.where(array, function(v) { + return v.position === position; + }); +} + +function sortByWeight(array, reverse) { + array.forEach(function(v, i) { + v._tmpIndex_ = i; + return v; + }); + array.sort(function(a, b) { + var v0 = reverse ? b : a; + var v1 = reverse ? a : b; + return v0.weight === v1.weight ? + v0._tmpIndex_ - v1._tmpIndex_ : + v0.weight - v1.weight; + }); + array.forEach(function(v) { + delete v._tmpIndex_; + }); +} + +function findMaxPadding(boxes) { + var top = 0; + var left = 0; + var bottom = 0; + var right = 0; + helpers$1.each(boxes, function(box) { + if (box.getPadding) { + var boxPadding = box.getPadding(); + top = Math.max(top, boxPadding.top); + left = Math.max(left, boxPadding.left); + bottom = Math.max(bottom, boxPadding.bottom); + right = Math.max(right, boxPadding.right); + } + }); + return { + top: top, + left: left, + bottom: bottom, + right: right + }; +} + +function addSizeByPosition(boxes, size) { + helpers$1.each(boxes, function(box) { + size[box.position] += box.isHorizontal() ? box.height : box.width; + }); +} + +core_defaults._set('global', { + layout: { + padding: { + top: 0, + right: 0, + bottom: 0, + left: 0 + } + } +}); + +/** + * @interface ILayoutItem + * @prop {string} position - The position of the item in the chart layout. Possible values are + * 'left', 'top', 'right', 'bottom', and 'chartArea' + * @prop {number} weight - The weight used to sort the item. Higher weights are further away from the chart area + * @prop {boolean} fullWidth - if true, and the item is horizontal, then push vertical boxes down + * @prop {function} isHorizontal - returns true if the layout item is horizontal (ie. top or bottom) + * @prop {function} update - Takes two parameters: width and height. Returns size of item + * @prop {function} getPadding - Returns an object with padding on the edges + * @prop {number} width - Width of item. Must be valid after update() + * @prop {number} height - Height of item. Must be valid after update() + * @prop {number} left - Left edge of the item. Set by layout system and cannot be used in update + * @prop {number} top - Top edge of the item. Set by layout system and cannot be used in update + * @prop {number} right - Right edge of the item. Set by layout system and cannot be used in update + * @prop {number} bottom - Bottom edge of the item. Set by layout system and cannot be used in update + */ + +// The layout service is very self explanatory. It's responsible for the layout within a chart. +// Scales, Legends and Plugins all rely on the layout service and can easily register to be placed anywhere they need +// It is this service's responsibility of carrying out that layout. +var core_layouts = { + defaults: {}, + + /** + * Register a box to a chart. + * A box is simply a reference to an object that requires layout. eg. Scales, Legend, Title. + * @param {Chart} chart - the chart to use + * @param {ILayoutItem} item - the item to add to be layed out + */ + addBox: function(chart, item) { + if (!chart.boxes) { + chart.boxes = []; + } + + // initialize item with default values + item.fullWidth = item.fullWidth || false; + item.position = item.position || 'top'; + item.weight = item.weight || 0; + + chart.boxes.push(item); + }, + + /** + * Remove a layoutItem from a chart + * @param {Chart} chart - the chart to remove the box from + * @param {ILayoutItem} layoutItem - the item to remove from the layout + */ + removeBox: function(chart, layoutItem) { + var index = chart.boxes ? chart.boxes.indexOf(layoutItem) : -1; + if (index !== -1) { + chart.boxes.splice(index, 1); + } + }, + + /** + * Sets (or updates) options on the given `item`. + * @param {Chart} chart - the chart in which the item lives (or will be added to) + * @param {ILayoutItem} item - the item to configure with the given options + * @param {object} options - the new item options. + */ + configure: function(chart, item, options) { + var props = ['fullWidth', 'position', 'weight']; + var ilen = props.length; + var i = 0; + var prop; + + for (; i < ilen; ++i) { + prop = props[i]; + if (options.hasOwnProperty(prop)) { + item[prop] = options[prop]; + } + } + }, + + /** + * Fits boxes of the given chart into the given size by having each box measure itself + * then running a fitting algorithm + * @param {Chart} chart - the chart + * @param {number} width - the width to fit into + * @param {number} height - the height to fit into + */ + update: function(chart, width, height) { + if (!chart) { + return; + } + + var layoutOptions = chart.options.layout || {}; + var padding = helpers$1.options.toPadding(layoutOptions.padding); + var leftPadding = padding.left; + var rightPadding = padding.right; + var topPadding = padding.top; + var bottomPadding = padding.bottom; + + var leftBoxes = filterByPosition(chart.boxes, 'left'); + var rightBoxes = filterByPosition(chart.boxes, 'right'); + var topBoxes = filterByPosition(chart.boxes, 'top'); + var bottomBoxes = filterByPosition(chart.boxes, 'bottom'); + var chartAreaBoxes = filterByPosition(chart.boxes, 'chartArea'); + + // Sort boxes by weight. A higher weight is further away from the chart area + sortByWeight(leftBoxes, true); + sortByWeight(rightBoxes, false); + sortByWeight(topBoxes, true); + sortByWeight(bottomBoxes, false); + + var verticalBoxes = leftBoxes.concat(rightBoxes); + var horizontalBoxes = topBoxes.concat(bottomBoxes); + var outerBoxes = verticalBoxes.concat(horizontalBoxes); + + // Essentially we now have any number of boxes on each of the 4 sides. + // Our canvas looks like the following. + // The areas L1 and L2 are the left axes. R1 is the right axis, T1 is the top axis and + // B1 is the bottom axis + // There are also 4 quadrant-like locations (left to right instead of clockwise) reserved for chart overlays + // These locations are single-box locations only, when trying to register a chartArea location that is already taken, + // an error will be thrown. + // + // |----------------------------------------------------| + // | T1 (Full Width) | + // |----------------------------------------------------| + // | | | T2 | | + // | |----|-------------------------------------|----| + // | | | C1 | | C2 | | + // | | |----| |----| | + // | | | | | + // | L1 | L2 | ChartArea (C0) | R1 | + // | | | | | + // | | |----| |----| | + // | | | C3 | | C4 | | + // | |----|-------------------------------------|----| + // | | | B1 | | + // |----------------------------------------------------| + // | B2 (Full Width) | + // |----------------------------------------------------| + // + // What we do to find the best sizing, we do the following + // 1. Determine the minimum size of the chart area. + // 2. Split the remaining width equally between each vertical axis + // 3. Split the remaining height equally between each horizontal axis + // 4. Give each layout the maximum size it can be. The layout will return it's minimum size + // 5. Adjust the sizes of each axis based on it's minimum reported size. + // 6. Refit each axis + // 7. Position each axis in the final location + // 8. Tell the chart the final location of the chart area + // 9. Tell any axes that overlay the chart area the positions of the chart area + + // Step 1 + var chartWidth = width - leftPadding - rightPadding; + var chartHeight = height - topPadding - bottomPadding; + var chartAreaWidth = chartWidth / 2; // min 50% + + // Step 2 + var verticalBoxWidth = (width - chartAreaWidth) / verticalBoxes.length; + + // Step 3 + // TODO re-limit horizontal axis height (this limit has affected only padding calculation since PR 1837) + // var horizontalBoxHeight = (height - chartAreaHeight) / horizontalBoxes.length; + + // Step 4 + var maxChartAreaWidth = chartWidth; + var maxChartAreaHeight = chartHeight; + var outerBoxSizes = {top: topPadding, left: leftPadding, bottom: bottomPadding, right: rightPadding}; + var minBoxSizes = []; + var maxPadding; + + function getMinimumBoxSize(box) { + var minSize; + var isHorizontal = box.isHorizontal(); + + if (isHorizontal) { + minSize = box.update(box.fullWidth ? chartWidth : maxChartAreaWidth, chartHeight / 2); + maxChartAreaHeight -= minSize.height; + } else { + minSize = box.update(verticalBoxWidth, maxChartAreaHeight); + maxChartAreaWidth -= minSize.width; + } + + minBoxSizes.push({ + horizontal: isHorizontal, + width: minSize.width, + box: box, + }); + } + + helpers$1.each(outerBoxes, getMinimumBoxSize); + + // If a horizontal box has padding, we move the left boxes over to avoid ugly charts (see issue #2478) + maxPadding = findMaxPadding(outerBoxes); + + // At this point, maxChartAreaHeight and maxChartAreaWidth are the size the chart area could + // be if the axes are drawn at their minimum sizes. + // Steps 5 & 6 + + // Function to fit a box + function fitBox(box) { + var minBoxSize = helpers$1.findNextWhere(minBoxSizes, function(minBox) { + return minBox.box === box; + }); + + if (minBoxSize) { + if (minBoxSize.horizontal) { + var scaleMargin = { + left: Math.max(outerBoxSizes.left, maxPadding.left), + right: Math.max(outerBoxSizes.right, maxPadding.right), + top: 0, + bottom: 0 + }; + + // Don't use min size here because of label rotation. When the labels are rotated, their rotation highly depends + // on the margin. Sometimes they need to increase in size slightly + box.update(box.fullWidth ? chartWidth : maxChartAreaWidth, chartHeight / 2, scaleMargin); + } else { + box.update(minBoxSize.width, maxChartAreaHeight); + } + } + } + + // Update, and calculate the left and right margins for the horizontal boxes + helpers$1.each(verticalBoxes, fitBox); + addSizeByPosition(verticalBoxes, outerBoxSizes); + + // Set the Left and Right margins for the horizontal boxes + helpers$1.each(horizontalBoxes, fitBox); + addSizeByPosition(horizontalBoxes, outerBoxSizes); + + function finalFitVerticalBox(box) { + var minBoxSize = helpers$1.findNextWhere(minBoxSizes, function(minSize) { + return minSize.box === box; + }); + + var scaleMargin = { + left: 0, + right: 0, + top: outerBoxSizes.top, + bottom: outerBoxSizes.bottom + }; + + if (minBoxSize) { + box.update(minBoxSize.width, maxChartAreaHeight, scaleMargin); + } + } + + // Let the left layout know the final margin + helpers$1.each(verticalBoxes, finalFitVerticalBox); + + // Recalculate because the size of each layout might have changed slightly due to the margins (label rotation for instance) + outerBoxSizes = {top: topPadding, left: leftPadding, bottom: bottomPadding, right: rightPadding}; + addSizeByPosition(outerBoxes, outerBoxSizes); + + // We may be adding some padding to account for rotated x axis labels + var leftPaddingAddition = Math.max(maxPadding.left - outerBoxSizes.left, 0); + outerBoxSizes.left += leftPaddingAddition; + outerBoxSizes.right += Math.max(maxPadding.right - outerBoxSizes.right, 0); + + var topPaddingAddition = Math.max(maxPadding.top - outerBoxSizes.top, 0); + outerBoxSizes.top += topPaddingAddition; + outerBoxSizes.bottom += Math.max(maxPadding.bottom - outerBoxSizes.bottom, 0); + + // Figure out if our chart area changed. This would occur if the dataset layout label rotation + // changed due to the application of the margins in step 6. Since we can only get bigger, this is safe to do + // without calling `fit` again + var newMaxChartAreaHeight = height - outerBoxSizes.top - outerBoxSizes.bottom; + var newMaxChartAreaWidth = width - outerBoxSizes.left - outerBoxSizes.right; + + if (newMaxChartAreaWidth !== maxChartAreaWidth || newMaxChartAreaHeight !== maxChartAreaHeight) { + helpers$1.each(verticalBoxes, function(box) { + box.height = newMaxChartAreaHeight; + }); + + helpers$1.each(horizontalBoxes, function(box) { + if (!box.fullWidth) { + box.width = newMaxChartAreaWidth; + } + }); + + maxChartAreaHeight = newMaxChartAreaHeight; + maxChartAreaWidth = newMaxChartAreaWidth; + } + + // Step 7 - Position the boxes + var left = leftPadding + leftPaddingAddition; + var top = topPadding + topPaddingAddition; + + function placeBox(box) { + if (box.isHorizontal()) { + box.left = box.fullWidth ? leftPadding : outerBoxSizes.left; + box.right = box.fullWidth ? width - rightPadding : outerBoxSizes.left + maxChartAreaWidth; + box.top = top; + box.bottom = top + box.height; + + // Move to next point + top = box.bottom; + + } else { + + box.left = left; + box.right = left + box.width; + box.top = outerBoxSizes.top; + box.bottom = outerBoxSizes.top + maxChartAreaHeight; + + // Move to next point + left = box.right; + } + } + + helpers$1.each(leftBoxes.concat(topBoxes), placeBox); + + // Account for chart width and height + left += maxChartAreaWidth; + top += maxChartAreaHeight; + + helpers$1.each(rightBoxes, placeBox); + helpers$1.each(bottomBoxes, placeBox); + + // Step 8 + chart.chartArea = { + left: outerBoxSizes.left, + top: outerBoxSizes.top, + right: outerBoxSizes.left + maxChartAreaWidth, + bottom: outerBoxSizes.top + maxChartAreaHeight + }; + + // Step 9 + helpers$1.each(chartAreaBoxes, function(box) { + box.left = chart.chartArea.left; + box.top = chart.chartArea.top; + box.right = chart.chartArea.right; + box.bottom = chart.chartArea.bottom; + + box.update(maxChartAreaWidth, maxChartAreaHeight); + }); + } +}; + +/** + * Platform fallback implementation (minimal). + * @see https://github.com/chartjs/Chart.js/pull/4591#issuecomment-319575939 + */ + +var platform_basic = { + acquireContext: function(item) { + if (item && item.canvas) { + // Support for any object associated to a canvas (including a context2d) + item = item.canvas; + } + + return item && item.getContext('2d') || null; + } +}; + +var platform_dom = "/*\n * DOM element rendering detection\n * https://davidwalsh.name/detect-node-insertion\n */\n@keyframes chartjs-render-animation {\n\tfrom { opacity: 0.99; }\n\tto { opacity: 1; }\n}\n\n.chartjs-render-monitor {\n\tanimation: chartjs-render-animation 0.001s;\n}\n\n/*\n * DOM element resizing detection\n * https://github.com/marcj/css-element-queries\n */\n.chartjs-size-monitor,\n.chartjs-size-monitor-expand,\n.chartjs-size-monitor-shrink {\n\tposition: absolute;\n\tdirection: ltr;\n\tleft: 0;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\toverflow: hidden;\n\tpointer-events: none;\n\tvisibility: hidden;\n\tz-index: -1;\n}\n\n.chartjs-size-monitor-expand > div {\n\tposition: absolute;\n\twidth: 1000000px;\n\theight: 1000000px;\n\tleft: 0;\n\ttop: 0;\n}\n\n.chartjs-size-monitor-shrink > div {\n\tposition: absolute;\n\twidth: 200%;\n\theight: 200%;\n\tleft: 0;\n\ttop: 0;\n}\n"; + +var platform_dom$1 = /*#__PURE__*/Object.freeze({ +default: platform_dom +}); + +var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; + +function commonjsRequire () { + throw new Error('Dynamic requires are not currently supported by rollup-plugin-commonjs'); +} + +function createCommonjsModule(fn, module) { + return module = { exports: {} }, fn(module, module.exports), module.exports; +} + +function getCjsExportFromNamespace (n) { + return n && n.default || n; +} + +var stylesheet = getCjsExportFromNamespace(platform_dom$1); + +var EXPANDO_KEY = '$chartjs'; +var CSS_PREFIX = 'chartjs-'; +var CSS_SIZE_MONITOR = CSS_PREFIX + 'size-monitor'; +var CSS_RENDER_MONITOR = CSS_PREFIX + 'render-monitor'; +var CSS_RENDER_ANIMATION = CSS_PREFIX + 'render-animation'; +var ANIMATION_START_EVENTS = ['animationstart', 'webkitAnimationStart']; + +/** + * DOM event types -> Chart.js event types. + * Note: only events with different types are mapped. + * @see https://developer.mozilla.org/en-US/docs/Web/Events + */ +var EVENT_TYPES = { + touchstart: 'mousedown', + touchmove: 'mousemove', + touchend: 'mouseup', + pointerenter: 'mouseenter', + pointerdown: 'mousedown', + pointermove: 'mousemove', + pointerup: 'mouseup', + pointerleave: 'mouseout', + pointerout: 'mouseout' +}; + +/** + * The "used" size is the final value of a dimension property after all calculations have + * been performed. This method uses the computed style of `element` but returns undefined + * if the computed style is not expressed in pixels. That can happen in some cases where + * `element` has a size relative to its parent and this last one is not yet displayed, + * for example because of `display: none` on a parent node. + * @see https://developer.mozilla.org/en-US/docs/Web/CSS/used_value + * @returns {number} Size in pixels or undefined if unknown. + */ +function readUsedSize(element, property) { + var value = helpers$1.getStyle(element, property); + var matches = value && value.match(/^(\d+)(\.\d+)?px$/); + return matches ? Number(matches[1]) : undefined; +} + +/** + * Initializes the canvas style and render size without modifying the canvas display size, + * since responsiveness is handled by the controller.resize() method. The config is used + * to determine the aspect ratio to apply in case no explicit height has been specified. + */ +function initCanvas(canvas, config) { + var style = canvas.style; + + // NOTE(SB) canvas.getAttribute('width') !== canvas.width: in the first case it + // returns null or '' if no explicit value has been set to the canvas attribute. + var renderHeight = canvas.getAttribute('height'); + var renderWidth = canvas.getAttribute('width'); + + // Chart.js modifies some canvas values that we want to restore on destroy + canvas[EXPANDO_KEY] = { + initial: { + height: renderHeight, + width: renderWidth, + style: { + display: style.display, + height: style.height, + width: style.width + } + } + }; + + // Force canvas to display as block to avoid extra space caused by inline + // elements, which would interfere with the responsive resize process. + // https://github.com/chartjs/Chart.js/issues/2538 + style.display = style.display || 'block'; + + if (renderWidth === null || renderWidth === '') { + var displayWidth = readUsedSize(canvas, 'width'); + if (displayWidth !== undefined) { + canvas.width = displayWidth; + } + } + + if (renderHeight === null || renderHeight === '') { + if (canvas.style.height === '') { + // If no explicit render height and style height, let's apply the aspect ratio, + // which one can be specified by the user but also by charts as default option + // (i.e. options.aspectRatio). If not specified, use canvas aspect ratio of 2. + canvas.height = canvas.width / (config.options.aspectRatio || 2); + } else { + var displayHeight = readUsedSize(canvas, 'height'); + if (displayWidth !== undefined) { + canvas.height = displayHeight; + } + } + } + + return canvas; +} + +/** + * Detects support for options object argument in addEventListener. + * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support + * @private + */ +var supportsEventListenerOptions = (function() { + var supports = false; + try { + var options = Object.defineProperty({}, 'passive', { + // eslint-disable-next-line getter-return + get: function() { + supports = true; + } + }); + window.addEventListener('e', null, options); + } catch (e) { + // continue regardless of error + } + return supports; +}()); + +// Default passive to true as expected by Chrome for 'touchstart' and 'touchend' events. +// https://github.com/chartjs/Chart.js/issues/4287 +var eventListenerOptions = supportsEventListenerOptions ? {passive: true} : false; + +function addListener(node, type, listener) { + node.addEventListener(type, listener, eventListenerOptions); +} + +function removeListener(node, type, listener) { + node.removeEventListener(type, listener, eventListenerOptions); +} + +function createEvent(type, chart, x, y, nativeEvent) { + return { + type: type, + chart: chart, + native: nativeEvent || null, + x: x !== undefined ? x : null, + y: y !== undefined ? y : null, + }; +} + +function fromNativeEvent(event, chart) { + var type = EVENT_TYPES[event.type] || event.type; + var pos = helpers$1.getRelativePosition(event, chart); + return createEvent(type, chart, pos.x, pos.y, event); +} + +function throttled(fn, thisArg) { + var ticking = false; + var args = []; + + return function() { + args = Array.prototype.slice.call(arguments); + thisArg = thisArg || this; + + if (!ticking) { + ticking = true; + helpers$1.requestAnimFrame.call(window, function() { + ticking = false; + fn.apply(thisArg, args); + }); + } + }; +} + +function createDiv(cls) { + var el = document.createElement('div'); + el.className = cls || ''; + return el; +} + +// Implementation based on https://github.com/marcj/css-element-queries +function createResizer(handler) { + var maxSize = 1000000; + + // NOTE(SB) Don't use innerHTML because it could be considered unsafe. + // https://github.com/chartjs/Chart.js/issues/5902 + var resizer = createDiv(CSS_SIZE_MONITOR); + var expand = createDiv(CSS_SIZE_MONITOR + '-expand'); + var shrink = createDiv(CSS_SIZE_MONITOR + '-shrink'); + + expand.appendChild(createDiv()); + shrink.appendChild(createDiv()); + + resizer.appendChild(expand); + resizer.appendChild(shrink); + resizer._reset = function() { + expand.scrollLeft = maxSize; + expand.scrollTop = maxSize; + shrink.scrollLeft = maxSize; + shrink.scrollTop = maxSize; + }; + + var onScroll = function() { + resizer._reset(); + handler(); + }; + + addListener(expand, 'scroll', onScroll.bind(expand, 'expand')); + addListener(shrink, 'scroll', onScroll.bind(shrink, 'shrink')); + + return resizer; +} + +// https://davidwalsh.name/detect-node-insertion +function watchForRender(node, handler) { + var expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {}); + var proxy = expando.renderProxy = function(e) { + if (e.animationName === CSS_RENDER_ANIMATION) { + handler(); + } + }; + + helpers$1.each(ANIMATION_START_EVENTS, function(type) { + addListener(node, type, proxy); + }); + + // #4737: Chrome might skip the CSS animation when the CSS_RENDER_MONITOR class + // is removed then added back immediately (same animation frame?). Accessing the + // `offsetParent` property will force a reflow and re-evaluate the CSS animation. + // https://gist.github.com/paulirish/5d52fb081b3570c81e3a#box-metrics + // https://github.com/chartjs/Chart.js/issues/4737 + expando.reflow = !!node.offsetParent; + + node.classList.add(CSS_RENDER_MONITOR); +} + +function unwatchForRender(node) { + var expando = node[EXPANDO_KEY] || {}; + var proxy = expando.renderProxy; + + if (proxy) { + helpers$1.each(ANIMATION_START_EVENTS, function(type) { + removeListener(node, type, proxy); + }); + + delete expando.renderProxy; + } + + node.classList.remove(CSS_RENDER_MONITOR); +} + +function addResizeListener(node, listener, chart) { + var expando = node[EXPANDO_KEY] || (node[EXPANDO_KEY] = {}); + + // Let's keep track of this added resizer and thus avoid DOM query when removing it. + var resizer = expando.resizer = createResizer(throttled(function() { + if (expando.resizer) { + var container = chart.options.maintainAspectRatio && node.parentNode; + var w = container ? container.clientWidth : 0; + listener(createEvent('resize', chart)); + if (container && container.clientWidth < w && chart.canvas) { + // If the container size shrank during chart resize, let's assume + // scrollbar appeared. So we resize again with the scrollbar visible - + // effectively making chart smaller and the scrollbar hidden again. + // Because we are inside `throttled`, and currently `ticking`, scroll + // events are ignored during this whole 2 resize process. + // If we assumed wrong and something else happened, we are resizing + // twice in a frame (potential performance issue) + listener(createEvent('resize', chart)); + } + } + })); + + // The resizer needs to be attached to the node parent, so we first need to be + // sure that `node` is attached to the DOM before injecting the resizer element. + watchForRender(node, function() { + if (expando.resizer) { + var container = node.parentNode; + if (container && container !== resizer.parentNode) { + container.insertBefore(resizer, container.firstChild); + } + + // The container size might have changed, let's reset the resizer state. + resizer._reset(); + } + }); +} + +function removeResizeListener(node) { + var expando = node[EXPANDO_KEY] || {}; + var resizer = expando.resizer; + + delete expando.resizer; + unwatchForRender(node); + + if (resizer && resizer.parentNode) { + resizer.parentNode.removeChild(resizer); + } +} + +function injectCSS(platform, css) { + // https://stackoverflow.com/q/3922139 + var style = platform._style || document.createElement('style'); + if (!platform._style) { + platform._style = style; + css = '/* Chart.js */\n' + css; + style.setAttribute('type', 'text/css'); + document.getElementsByTagName('head')[0].appendChild(style); + } + + style.appendChild(document.createTextNode(css)); +} + +var platform_dom$2 = { + /** + * When `true`, prevents the automatic injection of the stylesheet required to + * correctly detect when the chart is added to the DOM and then resized. This + * switch has been added to allow external stylesheet (`dist/Chart(.min)?.js`) + * to be manually imported to make this library compatible with any CSP. + * See https://github.com/chartjs/Chart.js/issues/5208 + */ + disableCSSInjection: false, + + /** + * This property holds whether this platform is enabled for the current environment. + * Currently used by platform.js to select the proper implementation. + * @private + */ + _enabled: typeof window !== 'undefined' && typeof document !== 'undefined', + + /** + * @private + */ + _ensureLoaded: function() { + if (this._loaded) { + return; + } + + this._loaded = true; + + // https://github.com/chartjs/Chart.js/issues/5208 + if (!this.disableCSSInjection) { + injectCSS(this, stylesheet); + } + }, + + acquireContext: function(item, config) { + if (typeof item === 'string') { + item = document.getElementById(item); + } else if (item.length) { + // Support for array based queries (such as jQuery) + item = item[0]; + } + + if (item && item.canvas) { + // Support for any object associated to a canvas (including a context2d) + item = item.canvas; + } + + // To prevent canvas fingerprinting, some add-ons undefine the getContext + // method, for example: https://github.com/kkapsner/CanvasBlocker + // https://github.com/chartjs/Chart.js/issues/2807 + var context = item && item.getContext && item.getContext('2d'); + + // Load platform resources on first chart creation, to make possible to change + // platform options after importing the library (e.g. `disableCSSInjection`). + this._ensureLoaded(); + + // `instanceof HTMLCanvasElement/CanvasRenderingContext2D` fails when the item is + // inside an iframe or when running in a protected environment. We could guess the + // types from their toString() value but let's keep things flexible and assume it's + // a sufficient condition if the item has a context2D which has item as `canvas`. + // https://github.com/chartjs/Chart.js/issues/3887 + // https://github.com/chartjs/Chart.js/issues/4102 + // https://github.com/chartjs/Chart.js/issues/4152 + if (context && context.canvas === item) { + initCanvas(item, config); + return context; + } + + return null; + }, + + releaseContext: function(context) { + var canvas = context.canvas; + if (!canvas[EXPANDO_KEY]) { + return; + } + + var initial = canvas[EXPANDO_KEY].initial; + ['height', 'width'].forEach(function(prop) { + var value = initial[prop]; + if (helpers$1.isNullOrUndef(value)) { + canvas.removeAttribute(prop); + } else { + canvas.setAttribute(prop, value); + } + }); + + helpers$1.each(initial.style || {}, function(value, key) { + canvas.style[key] = value; + }); + + // The canvas render size might have been changed (and thus the state stack discarded), + // we can't use save() and restore() to restore the initial state. So make sure that at + // least the canvas context is reset to the default state by setting the canvas width. + // https://www.w3.org/TR/2011/WD-html5-20110525/the-canvas-element.html + // eslint-disable-next-line no-self-assign + canvas.width = canvas.width; + + delete canvas[EXPANDO_KEY]; + }, + + addEventListener: function(chart, type, listener) { + var canvas = chart.canvas; + if (type === 'resize') { + // Note: the resize event is not supported on all browsers. + addResizeListener(canvas, listener, chart); + return; + } + + var expando = listener[EXPANDO_KEY] || (listener[EXPANDO_KEY] = {}); + var proxies = expando.proxies || (expando.proxies = {}); + var proxy = proxies[chart.id + '_' + type] = function(event) { + listener(fromNativeEvent(event, chart)); + }; + + addListener(canvas, type, proxy); + }, + + removeEventListener: function(chart, type, listener) { + var canvas = chart.canvas; + if (type === 'resize') { + // Note: the resize event is not supported on all browsers. + removeResizeListener(canvas); + return; + } + + var expando = listener[EXPANDO_KEY] || {}; + var proxies = expando.proxies || {}; + var proxy = proxies[chart.id + '_' + type]; + if (!proxy) { + return; + } + + removeListener(canvas, type, proxy); + } +}; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use EventTarget.addEventListener instead. + * EventTarget.addEventListener compatibility: Chrome, Opera 7, Safari, FF1.5+, IE9+ + * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener + * @function Chart.helpers.addEvent + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers$1.addEvent = addListener; + +/** + * Provided for backward compatibility, use EventTarget.removeEventListener instead. + * EventTarget.removeEventListener compatibility: Chrome, Opera 7, Safari, FF1.5+, IE9+ + * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener + * @function Chart.helpers.removeEvent + * @deprecated since version 2.7.0 + * @todo remove at version 3 + * @private + */ +helpers$1.removeEvent = removeListener; + +// @TODO Make possible to select another platform at build time. +var implementation = platform_dom$2._enabled ? platform_dom$2 : platform_basic; + +/** + * @namespace Chart.platform + * @see https://chartjs.gitbooks.io/proposals/content/Platform.html + * @since 2.4.0 + */ +var platform = helpers$1.extend({ + /** + * @since 2.7.0 + */ + initialize: function() {}, + + /** + * Called at chart construction time, returns a context2d instance implementing + * the [W3C Canvas 2D Context API standard]{@link https://www.w3.org/TR/2dcontext/}. + * @param {*} item - The native item from which to acquire context (platform specific) + * @param {object} options - The chart options + * @returns {CanvasRenderingContext2D} context2d instance + */ + acquireContext: function() {}, + + /** + * Called at chart destruction time, releases any resources associated to the context + * previously returned by the acquireContext() method. + * @param {CanvasRenderingContext2D} context - The context2d instance + * @returns {boolean} true if the method succeeded, else false + */ + releaseContext: function() {}, + + /** + * Registers the specified listener on the given chart. + * @param {Chart} chart - Chart from which to listen for event + * @param {string} type - The ({@link IEvent}) type to listen for + * @param {function} listener - Receives a notification (an object that implements + * the {@link IEvent} interface) when an event of the specified type occurs. + */ + addEventListener: function() {}, + + /** + * Removes the specified listener previously registered with addEventListener. + * @param {Chart} chart - Chart from which to remove the listener + * @param {string} type - The ({@link IEvent}) type to remove + * @param {function} listener - The listener function to remove from the event target. + */ + removeEventListener: function() {} + +}, implementation); + +core_defaults._set('global', { + plugins: {} +}); + +/** + * The plugin service singleton + * @namespace Chart.plugins + * @since 2.1.0 + */ +var core_plugins = { + /** + * Globally registered plugins. + * @private + */ + _plugins: [], + + /** + * This identifier is used to invalidate the descriptors cache attached to each chart + * when a global plugin is registered or unregistered. In this case, the cache ID is + * incremented and descriptors are regenerated during following API calls. + * @private + */ + _cacheId: 0, + + /** + * Registers the given plugin(s) if not already registered. + * @param {IPlugin[]|IPlugin} plugins plugin instance(s). + */ + register: function(plugins) { + var p = this._plugins; + ([]).concat(plugins).forEach(function(plugin) { + if (p.indexOf(plugin) === -1) { + p.push(plugin); + } + }); + + this._cacheId++; + }, + + /** + * Unregisters the given plugin(s) only if registered. + * @param {IPlugin[]|IPlugin} plugins plugin instance(s). + */ + unregister: function(plugins) { + var p = this._plugins; + ([]).concat(plugins).forEach(function(plugin) { + var idx = p.indexOf(plugin); + if (idx !== -1) { + p.splice(idx, 1); + } + }); + + this._cacheId++; + }, + + /** + * Remove all registered plugins. + * @since 2.1.5 + */ + clear: function() { + this._plugins = []; + this._cacheId++; + }, + + /** + * Returns the number of registered plugins? + * @returns {number} + * @since 2.1.5 + */ + count: function() { + return this._plugins.length; + }, + + /** + * Returns all registered plugin instances. + * @returns {IPlugin[]} array of plugin objects. + * @since 2.1.5 + */ + getAll: function() { + return this._plugins; + }, + + /** + * Calls enabled plugins for `chart` on the specified hook and with the given args. + * This method immediately returns as soon as a plugin explicitly returns false. The + * returned value can be used, for instance, to interrupt the current action. + * @param {Chart} chart - The chart instance for which plugins should be called. + * @param {string} hook - The name of the plugin method to call (e.g. 'beforeUpdate'). + * @param {Array} [args] - Extra arguments to apply to the hook call. + * @returns {boolean} false if any of the plugins return false, else returns true. + */ + notify: function(chart, hook, args) { + var descriptors = this.descriptors(chart); + var ilen = descriptors.length; + var i, descriptor, plugin, params, method; + + for (i = 0; i < ilen; ++i) { + descriptor = descriptors[i]; + plugin = descriptor.plugin; + method = plugin[hook]; + if (typeof method === 'function') { + params = [chart].concat(args || []); + params.push(descriptor.options); + if (method.apply(plugin, params) === false) { + return false; + } + } + } + + return true; + }, + + /** + * Returns descriptors of enabled plugins for the given chart. + * @returns {object[]} [{ plugin, options }] + * @private + */ + descriptors: function(chart) { + var cache = chart.$plugins || (chart.$plugins = {}); + if (cache.id === this._cacheId) { + return cache.descriptors; + } + + var plugins = []; + var descriptors = []; + var config = (chart && chart.config) || {}; + var options = (config.options && config.options.plugins) || {}; + + this._plugins.concat(config.plugins || []).forEach(function(plugin) { + var idx = plugins.indexOf(plugin); + if (idx !== -1) { + return; + } + + var id = plugin.id; + var opts = options[id]; + if (opts === false) { + return; + } + + if (opts === true) { + opts = helpers$1.clone(core_defaults.global.plugins[id]); + } + + plugins.push(plugin); + descriptors.push({ + plugin: plugin, + options: opts || {} + }); + }); + + cache.descriptors = descriptors; + cache.id = this._cacheId; + return descriptors; + }, + + /** + * Invalidates cache for the given chart: descriptors hold a reference on plugin option, + * but in some cases, this reference can be changed by the user when updating options. + * https://github.com/chartjs/Chart.js/issues/5111#issuecomment-355934167 + * @private + */ + _invalidate: function(chart) { + delete chart.$plugins; + } +}; + +var core_scaleService = { + // Scale registration object. Extensions can register new scale types (such as log or DB scales) and then + // use the new chart options to grab the correct scale + constructors: {}, + // Use a registration function so that we can move to an ES6 map when we no longer need to support + // old browsers + + // Scale config defaults + defaults: {}, + registerScaleType: function(type, scaleConstructor, scaleDefaults) { + this.constructors[type] = scaleConstructor; + this.defaults[type] = helpers$1.clone(scaleDefaults); + }, + getScaleConstructor: function(type) { + return this.constructors.hasOwnProperty(type) ? this.constructors[type] : undefined; + }, + getScaleDefaults: function(type) { + // Return the scale defaults merged with the global settings so that we always use the latest ones + return this.defaults.hasOwnProperty(type) ? helpers$1.merge({}, [core_defaults.scale, this.defaults[type]]) : {}; + }, + updateScaleDefaults: function(type, additions) { + var me = this; + if (me.defaults.hasOwnProperty(type)) { + me.defaults[type] = helpers$1.extend(me.defaults[type], additions); + } + }, + addScalesToLayout: function(chart) { + // Adds each scale to the chart.boxes array to be sized accordingly + helpers$1.each(chart.scales, function(scale) { + // Set ILayoutItem parameters for backwards compatibility + scale.fullWidth = scale.options.fullWidth; + scale.position = scale.options.position; + scale.weight = scale.options.weight; + core_layouts.addBox(chart, scale); + }); + } +}; + +var valueOrDefault$7 = helpers$1.valueOrDefault; + +core_defaults._set('global', { + tooltips: { + enabled: true, + custom: null, + mode: 'nearest', + position: 'average', + intersect: true, + backgroundColor: 'rgba(0,0,0,0.8)', + titleFontStyle: 'bold', + titleSpacing: 2, + titleMarginBottom: 6, + titleFontColor: '#fff', + titleAlign: 'left', + bodySpacing: 2, + bodyFontColor: '#fff', + bodyAlign: 'left', + footerFontStyle: 'bold', + footerSpacing: 2, + footerMarginTop: 6, + footerFontColor: '#fff', + footerAlign: 'left', + yPadding: 6, + xPadding: 6, + caretPadding: 2, + caretSize: 5, + cornerRadius: 6, + multiKeyBackground: '#fff', + displayColors: true, + borderColor: 'rgba(0,0,0,0)', + borderWidth: 0, + callbacks: { + // Args are: (tooltipItems, data) + beforeTitle: helpers$1.noop, + title: function(tooltipItems, data) { + var title = ''; + var labels = data.labels; + var labelCount = labels ? labels.length : 0; + + if (tooltipItems.length > 0) { + var item = tooltipItems[0]; + if (item.label) { + title = item.label; + } else if (item.xLabel) { + title = item.xLabel; + } else if (labelCount > 0 && item.index < labelCount) { + title = labels[item.index]; + } + } + + return title; + }, + afterTitle: helpers$1.noop, + + // Args are: (tooltipItems, data) + beforeBody: helpers$1.noop, + + // Args are: (tooltipItem, data) + beforeLabel: helpers$1.noop, + label: function(tooltipItem, data) { + var label = data.datasets[tooltipItem.datasetIndex].label || ''; + + if (label) { + label += ': '; + } + if (!helpers$1.isNullOrUndef(tooltipItem.value)) { + label += tooltipItem.value; + } else { + label += tooltipItem.yLabel; + } + return label; + }, + labelColor: function(tooltipItem, chart) { + var meta = chart.getDatasetMeta(tooltipItem.datasetIndex); + var activeElement = meta.data[tooltipItem.index]; + var view = activeElement._view; + return { + borderColor: view.borderColor, + backgroundColor: view.backgroundColor + }; + }, + labelTextColor: function() { + return this._options.bodyFontColor; + }, + afterLabel: helpers$1.noop, + + // Args are: (tooltipItems, data) + afterBody: helpers$1.noop, + + // Args are: (tooltipItems, data) + beforeFooter: helpers$1.noop, + footer: helpers$1.noop, + afterFooter: helpers$1.noop + } + } +}); + +var positioners = { + /** + * Average mode places the tooltip at the average position of the elements shown + * @function Chart.Tooltip.positioners.average + * @param elements {ChartElement[]} the elements being displayed in the tooltip + * @returns {object} tooltip position + */ + average: function(elements) { + if (!elements.length) { + return false; + } + + var i, len; + var x = 0; + var y = 0; + var count = 0; + + for (i = 0, len = elements.length; i < len; ++i) { + var el = elements[i]; + if (el && el.hasValue()) { + var pos = el.tooltipPosition(); + x += pos.x; + y += pos.y; + ++count; + } + } + + return { + x: x / count, + y: y / count + }; + }, + + /** + * Gets the tooltip position nearest of the item nearest to the event position + * @function Chart.Tooltip.positioners.nearest + * @param elements {Chart.Element[]} the tooltip elements + * @param eventPosition {object} the position of the event in canvas coordinates + * @returns {object} the tooltip position + */ + nearest: function(elements, eventPosition) { + var x = eventPosition.x; + var y = eventPosition.y; + var minDistance = Number.POSITIVE_INFINITY; + var i, len, nearestElement; + + for (i = 0, len = elements.length; i < len; ++i) { + var el = elements[i]; + if (el && el.hasValue()) { + var center = el.getCenterPoint(); + var d = helpers$1.distanceBetweenPoints(eventPosition, center); + + if (d < minDistance) { + minDistance = d; + nearestElement = el; + } + } + } + + if (nearestElement) { + var tp = nearestElement.tooltipPosition(); + x = tp.x; + y = tp.y; + } + + return { + x: x, + y: y + }; + } +}; + +// Helper to push or concat based on if the 2nd parameter is an array or not +function pushOrConcat(base, toPush) { + if (toPush) { + if (helpers$1.isArray(toPush)) { + // base = base.concat(toPush); + Array.prototype.push.apply(base, toPush); + } else { + base.push(toPush); + } + } + + return base; +} + +/** + * Returns array of strings split by newline + * @param {string} value - The value to split by newline. + * @returns {string[]} value if newline present - Returned from String split() method + * @function + */ +function splitNewlines(str) { + if ((typeof str === 'string' || str instanceof String) && str.indexOf('\n') > -1) { + return str.split('\n'); + } + return str; +} + + +/** + * Private helper to create a tooltip item model + * @param element - the chart element (point, arc, bar) to create the tooltip item for + * @return new tooltip item + */ +function createTooltipItem(element) { + var xScale = element._xScale; + var yScale = element._yScale || element._scale; // handle radar || polarArea charts + var index = element._index; + var datasetIndex = element._datasetIndex; + var controller = element._chart.getDatasetMeta(datasetIndex).controller; + var indexScale = controller._getIndexScale(); + var valueScale = controller._getValueScale(); + + return { + xLabel: xScale ? xScale.getLabelForIndex(index, datasetIndex) : '', + yLabel: yScale ? yScale.getLabelForIndex(index, datasetIndex) : '', + label: indexScale ? '' + indexScale.getLabelForIndex(index, datasetIndex) : '', + value: valueScale ? '' + valueScale.getLabelForIndex(index, datasetIndex) : '', + index: index, + datasetIndex: datasetIndex, + x: element._model.x, + y: element._model.y + }; +} + +/** + * Helper to get the reset model for the tooltip + * @param tooltipOpts {object} the tooltip options + */ +function getBaseModel(tooltipOpts) { + var globalDefaults = core_defaults.global; + + return { + // Positioning + xPadding: tooltipOpts.xPadding, + yPadding: tooltipOpts.yPadding, + xAlign: tooltipOpts.xAlign, + yAlign: tooltipOpts.yAlign, + + // Body + bodyFontColor: tooltipOpts.bodyFontColor, + _bodyFontFamily: valueOrDefault$7(tooltipOpts.bodyFontFamily, globalDefaults.defaultFontFamily), + _bodyFontStyle: valueOrDefault$7(tooltipOpts.bodyFontStyle, globalDefaults.defaultFontStyle), + _bodyAlign: tooltipOpts.bodyAlign, + bodyFontSize: valueOrDefault$7(tooltipOpts.bodyFontSize, globalDefaults.defaultFontSize), + bodySpacing: tooltipOpts.bodySpacing, + + // Title + titleFontColor: tooltipOpts.titleFontColor, + _titleFontFamily: valueOrDefault$7(tooltipOpts.titleFontFamily, globalDefaults.defaultFontFamily), + _titleFontStyle: valueOrDefault$7(tooltipOpts.titleFontStyle, globalDefaults.defaultFontStyle), + titleFontSize: valueOrDefault$7(tooltipOpts.titleFontSize, globalDefaults.defaultFontSize), + _titleAlign: tooltipOpts.titleAlign, + titleSpacing: tooltipOpts.titleSpacing, + titleMarginBottom: tooltipOpts.titleMarginBottom, + + // Footer + footerFontColor: tooltipOpts.footerFontColor, + _footerFontFamily: valueOrDefault$7(tooltipOpts.footerFontFamily, globalDefaults.defaultFontFamily), + _footerFontStyle: valueOrDefault$7(tooltipOpts.footerFontStyle, globalDefaults.defaultFontStyle), + footerFontSize: valueOrDefault$7(tooltipOpts.footerFontSize, globalDefaults.defaultFontSize), + _footerAlign: tooltipOpts.footerAlign, + footerSpacing: tooltipOpts.footerSpacing, + footerMarginTop: tooltipOpts.footerMarginTop, + + // Appearance + caretSize: tooltipOpts.caretSize, + cornerRadius: tooltipOpts.cornerRadius, + backgroundColor: tooltipOpts.backgroundColor, + opacity: 0, + legendColorBackground: tooltipOpts.multiKeyBackground, + displayColors: tooltipOpts.displayColors, + borderColor: tooltipOpts.borderColor, + borderWidth: tooltipOpts.borderWidth + }; +} + +/** + * Get the size of the tooltip + */ +function getTooltipSize(tooltip, model) { + var ctx = tooltip._chart.ctx; + + var height = model.yPadding * 2; // Tooltip Padding + var width = 0; + + // Count of all lines in the body + var body = model.body; + var combinedBodyLength = body.reduce(function(count, bodyItem) { + return count + bodyItem.before.length + bodyItem.lines.length + bodyItem.after.length; + }, 0); + combinedBodyLength += model.beforeBody.length + model.afterBody.length; + + var titleLineCount = model.title.length; + var footerLineCount = model.footer.length; + var titleFontSize = model.titleFontSize; + var bodyFontSize = model.bodyFontSize; + var footerFontSize = model.footerFontSize; + + height += titleLineCount * titleFontSize; // Title Lines + height += titleLineCount ? (titleLineCount - 1) * model.titleSpacing : 0; // Title Line Spacing + height += titleLineCount ? model.titleMarginBottom : 0; // Title's bottom Margin + height += combinedBodyLength * bodyFontSize; // Body Lines + height += combinedBodyLength ? (combinedBodyLength - 1) * model.bodySpacing : 0; // Body Line Spacing + height += footerLineCount ? model.footerMarginTop : 0; // Footer Margin + height += footerLineCount * (footerFontSize); // Footer Lines + height += footerLineCount ? (footerLineCount - 1) * model.footerSpacing : 0; // Footer Line Spacing + + // Title width + var widthPadding = 0; + var maxLineWidth = function(line) { + width = Math.max(width, ctx.measureText(line).width + widthPadding); + }; + + ctx.font = helpers$1.fontString(titleFontSize, model._titleFontStyle, model._titleFontFamily); + helpers$1.each(model.title, maxLineWidth); + + // Body width + ctx.font = helpers$1.fontString(bodyFontSize, model._bodyFontStyle, model._bodyFontFamily); + helpers$1.each(model.beforeBody.concat(model.afterBody), maxLineWidth); + + // Body lines may include some extra width due to the color box + widthPadding = model.displayColors ? (bodyFontSize + 2) : 0; + helpers$1.each(body, function(bodyItem) { + helpers$1.each(bodyItem.before, maxLineWidth); + helpers$1.each(bodyItem.lines, maxLineWidth); + helpers$1.each(bodyItem.after, maxLineWidth); + }); + + // Reset back to 0 + widthPadding = 0; + + // Footer width + ctx.font = helpers$1.fontString(footerFontSize, model._footerFontStyle, model._footerFontFamily); + helpers$1.each(model.footer, maxLineWidth); + + // Add padding + width += 2 * model.xPadding; + + return { + width: width, + height: height + }; +} + +/** + * Helper to get the alignment of a tooltip given the size + */ +function determineAlignment(tooltip, size) { + var model = tooltip._model; + var chart = tooltip._chart; + var chartArea = tooltip._chart.chartArea; + var xAlign = 'center'; + var yAlign = 'center'; + + if (model.y < size.height) { + yAlign = 'top'; + } else if (model.y > (chart.height - size.height)) { + yAlign = 'bottom'; + } + + var lf, rf; // functions to determine left, right alignment + var olf, orf; // functions to determine if left/right alignment causes tooltip to go outside chart + var yf; // function to get the y alignment if the tooltip goes outside of the left or right edges + var midX = (chartArea.left + chartArea.right) / 2; + var midY = (chartArea.top + chartArea.bottom) / 2; + + if (yAlign === 'center') { + lf = function(x) { + return x <= midX; + }; + rf = function(x) { + return x > midX; + }; + } else { + lf = function(x) { + return x <= (size.width / 2); + }; + rf = function(x) { + return x >= (chart.width - (size.width / 2)); + }; + } + + olf = function(x) { + return x + size.width + model.caretSize + model.caretPadding > chart.width; + }; + orf = function(x) { + return x - size.width - model.caretSize - model.caretPadding < 0; + }; + yf = function(y) { + return y <= midY ? 'top' : 'bottom'; + }; + + if (lf(model.x)) { + xAlign = 'left'; + + // Is tooltip too wide and goes over the right side of the chart.? + if (olf(model.x)) { + xAlign = 'center'; + yAlign = yf(model.y); + } + } else if (rf(model.x)) { + xAlign = 'right'; + + // Is tooltip too wide and goes outside left edge of canvas? + if (orf(model.x)) { + xAlign = 'center'; + yAlign = yf(model.y); + } + } + + var opts = tooltip._options; + return { + xAlign: opts.xAlign ? opts.xAlign : xAlign, + yAlign: opts.yAlign ? opts.yAlign : yAlign + }; +} + +/** + * Helper to get the location a tooltip needs to be placed at given the initial position (via the vm) and the size and alignment + */ +function getBackgroundPoint(vm, size, alignment, chart) { + // Background Position + var x = vm.x; + var y = vm.y; + + var caretSize = vm.caretSize; + var caretPadding = vm.caretPadding; + var cornerRadius = vm.cornerRadius; + var xAlign = alignment.xAlign; + var yAlign = alignment.yAlign; + var paddingAndSize = caretSize + caretPadding; + var radiusAndPadding = cornerRadius + caretPadding; + + if (xAlign === 'right') { + x -= size.width; + } else if (xAlign === 'center') { + x -= (size.width / 2); + if (x + size.width > chart.width) { + x = chart.width - size.width; + } + if (x < 0) { + x = 0; + } + } + + if (yAlign === 'top') { + y += paddingAndSize; + } else if (yAlign === 'bottom') { + y -= size.height + paddingAndSize; + } else { + y -= (size.height / 2); + } + + if (yAlign === 'center') { + if (xAlign === 'left') { + x += paddingAndSize; + } else if (xAlign === 'right') { + x -= paddingAndSize; + } + } else if (xAlign === 'left') { + x -= radiusAndPadding; + } else if (xAlign === 'right') { + x += radiusAndPadding; + } + + return { + x: x, + y: y + }; +} + +function getAlignedX(vm, align) { + return align === 'center' + ? vm.x + vm.width / 2 + : align === 'right' + ? vm.x + vm.width - vm.xPadding + : vm.x + vm.xPadding; +} + +/** + * Helper to build before and after body lines + */ +function getBeforeAfterBodyLines(callback) { + return pushOrConcat([], splitNewlines(callback)); +} + +var exports$3 = core_element.extend({ + initialize: function() { + this._model = getBaseModel(this._options); + this._lastActive = []; + }, + + // Get the title + // Args are: (tooltipItem, data) + getTitle: function() { + var me = this; + var opts = me._options; + var callbacks = opts.callbacks; + + var beforeTitle = callbacks.beforeTitle.apply(me, arguments); + var title = callbacks.title.apply(me, arguments); + var afterTitle = callbacks.afterTitle.apply(me, arguments); + + var lines = []; + lines = pushOrConcat(lines, splitNewlines(beforeTitle)); + lines = pushOrConcat(lines, splitNewlines(title)); + lines = pushOrConcat(lines, splitNewlines(afterTitle)); + + return lines; + }, + + // Args are: (tooltipItem, data) + getBeforeBody: function() { + return getBeforeAfterBodyLines(this._options.callbacks.beforeBody.apply(this, arguments)); + }, + + // Args are: (tooltipItem, data) + getBody: function(tooltipItems, data) { + var me = this; + var callbacks = me._options.callbacks; + var bodyItems = []; + + helpers$1.each(tooltipItems, function(tooltipItem) { + var bodyItem = { + before: [], + lines: [], + after: [] + }; + pushOrConcat(bodyItem.before, splitNewlines(callbacks.beforeLabel.call(me, tooltipItem, data))); + pushOrConcat(bodyItem.lines, callbacks.label.call(me, tooltipItem, data)); + pushOrConcat(bodyItem.after, splitNewlines(callbacks.afterLabel.call(me, tooltipItem, data))); + + bodyItems.push(bodyItem); + }); + + return bodyItems; + }, + + // Args are: (tooltipItem, data) + getAfterBody: function() { + return getBeforeAfterBodyLines(this._options.callbacks.afterBody.apply(this, arguments)); + }, + + // Get the footer and beforeFooter and afterFooter lines + // Args are: (tooltipItem, data) + getFooter: function() { + var me = this; + var callbacks = me._options.callbacks; + + var beforeFooter = callbacks.beforeFooter.apply(me, arguments); + var footer = callbacks.footer.apply(me, arguments); + var afterFooter = callbacks.afterFooter.apply(me, arguments); + + var lines = []; + lines = pushOrConcat(lines, splitNewlines(beforeFooter)); + lines = pushOrConcat(lines, splitNewlines(footer)); + lines = pushOrConcat(lines, splitNewlines(afterFooter)); + + return lines; + }, + + update: function(changed) { + var me = this; + var opts = me._options; + + // Need to regenerate the model because its faster than using extend and it is necessary due to the optimization in Chart.Element.transition + // 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 + // which breaks any animations. + var existingModel = me._model; + var model = me._model = getBaseModel(opts); + var active = me._active; + + var data = me._data; + + // In the case where active.length === 0 we need to keep these at existing values for good animations + var alignment = { + xAlign: existingModel.xAlign, + yAlign: existingModel.yAlign + }; + var backgroundPoint = { + x: existingModel.x, + y: existingModel.y + }; + var tooltipSize = { + width: existingModel.width, + height: existingModel.height + }; + var tooltipPosition = { + x: existingModel.caretX, + y: existingModel.caretY + }; + + var i, len; + + if (active.length) { + model.opacity = 1; + + var labelColors = []; + var labelTextColors = []; + tooltipPosition = positioners[opts.position].call(me, active, me._eventPosition); + + var tooltipItems = []; + for (i = 0, len = active.length; i < len; ++i) { + tooltipItems.push(createTooltipItem(active[i])); + } + + // If the user provided a filter function, use it to modify the tooltip items + if (opts.filter) { + tooltipItems = tooltipItems.filter(function(a) { + return opts.filter(a, data); + }); + } + + // If the user provided a sorting function, use it to modify the tooltip items + if (opts.itemSort) { + tooltipItems = tooltipItems.sort(function(a, b) { + return opts.itemSort(a, b, data); + }); + } + + // Determine colors for boxes + helpers$1.each(tooltipItems, function(tooltipItem) { + labelColors.push(opts.callbacks.labelColor.call(me, tooltipItem, me._chart)); + labelTextColors.push(opts.callbacks.labelTextColor.call(me, tooltipItem, me._chart)); + }); + + + // Build the Text Lines + model.title = me.getTitle(tooltipItems, data); + model.beforeBody = me.getBeforeBody(tooltipItems, data); + model.body = me.getBody(tooltipItems, data); + model.afterBody = me.getAfterBody(tooltipItems, data); + model.footer = me.getFooter(tooltipItems, data); + + // Initial positioning and colors + model.x = tooltipPosition.x; + model.y = tooltipPosition.y; + model.caretPadding = opts.caretPadding; + model.labelColors = labelColors; + model.labelTextColors = labelTextColors; + + // data points + model.dataPoints = tooltipItems; + + // We need to determine alignment of the tooltip + tooltipSize = getTooltipSize(this, model); + alignment = determineAlignment(this, tooltipSize); + // Final Size and Position + backgroundPoint = getBackgroundPoint(model, tooltipSize, alignment, me._chart); + } else { + model.opacity = 0; + } + + model.xAlign = alignment.xAlign; + model.yAlign = alignment.yAlign; + model.x = backgroundPoint.x; + model.y = backgroundPoint.y; + model.width = tooltipSize.width; + model.height = tooltipSize.height; + + // Point where the caret on the tooltip points to + model.caretX = tooltipPosition.x; + model.caretY = tooltipPosition.y; + + me._model = model; + + if (changed && opts.custom) { + opts.custom.call(me, model); + } + + return me; + }, + + drawCaret: function(tooltipPoint, size) { + var ctx = this._chart.ctx; + var vm = this._view; + var caretPosition = this.getCaretPosition(tooltipPoint, size, vm); + + ctx.lineTo(caretPosition.x1, caretPosition.y1); + ctx.lineTo(caretPosition.x2, caretPosition.y2); + ctx.lineTo(caretPosition.x3, caretPosition.y3); + }, + getCaretPosition: function(tooltipPoint, size, vm) { + var x1, x2, x3, y1, y2, y3; + var caretSize = vm.caretSize; + var cornerRadius = vm.cornerRadius; + var xAlign = vm.xAlign; + var yAlign = vm.yAlign; + var ptX = tooltipPoint.x; + var ptY = tooltipPoint.y; + var width = size.width; + var height = size.height; + + if (yAlign === 'center') { + y2 = ptY + (height / 2); + + if (xAlign === 'left') { + x1 = ptX; + x2 = x1 - caretSize; + x3 = x1; + + y1 = y2 + caretSize; + y3 = y2 - caretSize; + } else { + x1 = ptX + width; + x2 = x1 + caretSize; + x3 = x1; + + y1 = y2 - caretSize; + y3 = y2 + caretSize; + } + } else { + if (xAlign === 'left') { + x2 = ptX + cornerRadius + (caretSize); + x1 = x2 - caretSize; + x3 = x2 + caretSize; + } else if (xAlign === 'right') { + x2 = ptX + width - cornerRadius - caretSize; + x1 = x2 - caretSize; + x3 = x2 + caretSize; + } else { + x2 = vm.caretX; + x1 = x2 - caretSize; + x3 = x2 + caretSize; + } + if (yAlign === 'top') { + y1 = ptY; + y2 = y1 - caretSize; + y3 = y1; + } else { + y1 = ptY + height; + y2 = y1 + caretSize; + y3 = y1; + // invert drawing order + var tmp = x3; + x3 = x1; + x1 = tmp; + } + } + return {x1: x1, x2: x2, x3: x3, y1: y1, y2: y2, y3: y3}; + }, + + drawTitle: function(pt, vm, ctx) { + var title = vm.title; + + if (title.length) { + pt.x = getAlignedX(vm, vm._titleAlign); + + ctx.textAlign = vm._titleAlign; + ctx.textBaseline = 'top'; + + var titleFontSize = vm.titleFontSize; + var titleSpacing = vm.titleSpacing; + + ctx.fillStyle = vm.titleFontColor; + ctx.font = helpers$1.fontString(titleFontSize, vm._titleFontStyle, vm._titleFontFamily); + + var i, len; + for (i = 0, len = title.length; i < len; ++i) { + ctx.fillText(title[i], pt.x, pt.y); + pt.y += titleFontSize + titleSpacing; // Line Height and spacing + + if (i + 1 === title.length) { + pt.y += vm.titleMarginBottom - titleSpacing; // If Last, add margin, remove spacing + } + } + } + }, + + drawBody: function(pt, vm, ctx) { + var bodyFontSize = vm.bodyFontSize; + var bodySpacing = vm.bodySpacing; + var bodyAlign = vm._bodyAlign; + var body = vm.body; + var drawColorBoxes = vm.displayColors; + var labelColors = vm.labelColors; + var xLinePadding = 0; + var colorX = drawColorBoxes ? getAlignedX(vm, 'left') : 0; + var textColor; + + ctx.textAlign = bodyAlign; + ctx.textBaseline = 'top'; + ctx.font = helpers$1.fontString(bodyFontSize, vm._bodyFontStyle, vm._bodyFontFamily); + + pt.x = getAlignedX(vm, bodyAlign); + + // Before Body + var fillLineOfText = function(line) { + ctx.fillText(line, pt.x + xLinePadding, pt.y); + pt.y += bodyFontSize + bodySpacing; + }; + + // Before body lines + ctx.fillStyle = vm.bodyFontColor; + helpers$1.each(vm.beforeBody, fillLineOfText); + + xLinePadding = drawColorBoxes && bodyAlign !== 'right' + ? bodyAlign === 'center' ? (bodyFontSize / 2 + 1) : (bodyFontSize + 2) + : 0; + + // Draw body lines now + helpers$1.each(body, function(bodyItem, i) { + textColor = vm.labelTextColors[i]; + ctx.fillStyle = textColor; + helpers$1.each(bodyItem.before, fillLineOfText); + + helpers$1.each(bodyItem.lines, function(line) { + // Draw Legend-like boxes if needed + if (drawColorBoxes) { + // Fill a white rect so that colours merge nicely if the opacity is < 1 + ctx.fillStyle = vm.legendColorBackground; + ctx.fillRect(colorX, pt.y, bodyFontSize, bodyFontSize); + + // Border + ctx.lineWidth = 1; + ctx.strokeStyle = labelColors[i].borderColor; + ctx.strokeRect(colorX, pt.y, bodyFontSize, bodyFontSize); + + // Inner square + ctx.fillStyle = labelColors[i].backgroundColor; + ctx.fillRect(colorX + 1, pt.y + 1, bodyFontSize - 2, bodyFontSize - 2); + ctx.fillStyle = textColor; + } + + fillLineOfText(line); + }); + + helpers$1.each(bodyItem.after, fillLineOfText); + }); + + // Reset back to 0 for after body + xLinePadding = 0; + + // After body lines + helpers$1.each(vm.afterBody, fillLineOfText); + pt.y -= bodySpacing; // Remove last body spacing + }, + + drawFooter: function(pt, vm, ctx) { + var footer = vm.footer; + + if (footer.length) { + pt.x = getAlignedX(vm, vm._footerAlign); + pt.y += vm.footerMarginTop; + + ctx.textAlign = vm._footerAlign; + ctx.textBaseline = 'top'; + + ctx.fillStyle = vm.footerFontColor; + ctx.font = helpers$1.fontString(vm.footerFontSize, vm._footerFontStyle, vm._footerFontFamily); + + helpers$1.each(footer, function(line) { + ctx.fillText(line, pt.x, pt.y); + pt.y += vm.footerFontSize + vm.footerSpacing; + }); + } + }, + + drawBackground: function(pt, vm, ctx, tooltipSize) { + ctx.fillStyle = vm.backgroundColor; + ctx.strokeStyle = vm.borderColor; + ctx.lineWidth = vm.borderWidth; + var xAlign = vm.xAlign; + var yAlign = vm.yAlign; + var x = pt.x; + var y = pt.y; + var width = tooltipSize.width; + var height = tooltipSize.height; + var radius = vm.cornerRadius; + + ctx.beginPath(); + ctx.moveTo(x + radius, y); + if (yAlign === 'top') { + this.drawCaret(pt, tooltipSize); + } + ctx.lineTo(x + width - radius, y); + ctx.quadraticCurveTo(x + width, y, x + width, y + radius); + if (yAlign === 'center' && xAlign === 'right') { + this.drawCaret(pt, tooltipSize); + } + ctx.lineTo(x + width, y + height - radius); + ctx.quadraticCurveTo(x + width, y + height, x + width - radius, y + height); + if (yAlign === 'bottom') { + this.drawCaret(pt, tooltipSize); + } + ctx.lineTo(x + radius, y + height); + ctx.quadraticCurveTo(x, y + height, x, y + height - radius); + if (yAlign === 'center' && xAlign === 'left') { + this.drawCaret(pt, tooltipSize); + } + ctx.lineTo(x, y + radius); + ctx.quadraticCurveTo(x, y, x + radius, y); + ctx.closePath(); + + ctx.fill(); + + if (vm.borderWidth > 0) { + ctx.stroke(); + } + }, + + draw: function() { + var ctx = this._chart.ctx; + var vm = this._view; + + if (vm.opacity === 0) { + return; + } + + var tooltipSize = { + width: vm.width, + height: vm.height + }; + var pt = { + x: vm.x, + y: vm.y + }; + + // IE11/Edge does not like very small opacities, so snap to 0 + var opacity = Math.abs(vm.opacity < 1e-3) ? 0 : vm.opacity; + + // Truthy/falsey value for empty tooltip + var hasTooltipContent = vm.title.length || vm.beforeBody.length || vm.body.length || vm.afterBody.length || vm.footer.length; + + if (this._options.enabled && hasTooltipContent) { + ctx.save(); + ctx.globalAlpha = opacity; + + // Draw Background + this.drawBackground(pt, vm, ctx, tooltipSize); + + // Draw Title, Body, and Footer + pt.y += vm.yPadding; + + // Titles + this.drawTitle(pt, vm, ctx); + + // Body + this.drawBody(pt, vm, ctx); + + // Footer + this.drawFooter(pt, vm, ctx); + + ctx.restore(); + } + }, + + /** + * Handle an event + * @private + * @param {IEvent} event - The event to handle + * @returns {boolean} true if the tooltip changed + */ + handleEvent: function(e) { + var me = this; + var options = me._options; + var changed = false; + + me._lastActive = me._lastActive || []; + + // Find Active Elements for tooltips + if (e.type === 'mouseout') { + me._active = []; + } else { + me._active = me._chart.getElementsAtEventForMode(e, options.mode, options); + } + + // Remember Last Actives + changed = !helpers$1.arrayEquals(me._active, me._lastActive); + + // Only handle target event on tooltip change + if (changed) { + me._lastActive = me._active; + + if (options.enabled || options.custom) { + me._eventPosition = { + x: e.x, + y: e.y + }; + + me.update(true); + me.pivot(); + } + } + + return changed; + } +}); + +/** + * @namespace Chart.Tooltip.positioners + */ +var positioners_1 = positioners; + +var core_tooltip = exports$3; +core_tooltip.positioners = positioners_1; + +var valueOrDefault$8 = helpers$1.valueOrDefault; + +core_defaults._set('global', { + elements: {}, + events: [ + 'mousemove', + 'mouseout', + 'click', + 'touchstart', + 'touchmove' + ], + hover: { + onHover: null, + mode: 'nearest', + intersect: true, + animationDuration: 400 + }, + onClick: null, + maintainAspectRatio: true, + responsive: true, + responsiveAnimationDuration: 0 +}); + +/** + * Recursively merge the given config objects representing the `scales` option + * by incorporating scale defaults in `xAxes` and `yAxes` array items, then + * returns a deep copy of the result, thus doesn't alter inputs. + */ +function mergeScaleConfig(/* config objects ... */) { + return helpers$1.merge({}, [].slice.call(arguments), { + merger: function(key, target, source, options) { + if (key === 'xAxes' || key === 'yAxes') { + var slen = source[key].length; + var i, type, scale; + + if (!target[key]) { + target[key] = []; + } + + for (i = 0; i < slen; ++i) { + scale = source[key][i]; + type = valueOrDefault$8(scale.type, key === 'xAxes' ? 'category' : 'linear'); + + if (i >= target[key].length) { + target[key].push({}); + } + + if (!target[key][i].type || (scale.type && scale.type !== target[key][i].type)) { + // new/untyped scale or type changed: let's apply the new defaults + // then merge source scale to correctly overwrite the defaults. + helpers$1.merge(target[key][i], [core_scaleService.getScaleDefaults(type), scale]); + } else { + // scales type are the same + helpers$1.merge(target[key][i], scale); + } + } + } else { + helpers$1._merger(key, target, source, options); + } + } + }); +} + +/** + * Recursively merge the given config objects as the root options by handling + * default scale options for the `scales` and `scale` properties, then returns + * a deep copy of the result, thus doesn't alter inputs. + */ +function mergeConfig(/* config objects ... */) { + return helpers$1.merge({}, [].slice.call(arguments), { + merger: function(key, target, source, options) { + var tval = target[key] || {}; + var sval = source[key]; + + if (key === 'scales') { + // scale config merging is complex. Add our own function here for that + target[key] = mergeScaleConfig(tval, sval); + } else if (key === 'scale') { + // used in polar area & radar charts since there is only one scale + target[key] = helpers$1.merge(tval, [core_scaleService.getScaleDefaults(sval.type), sval]); + } else { + helpers$1._merger(key, target, source, options); + } + } + }); +} + +function initConfig(config) { + config = config || {}; + + // Do NOT use mergeConfig for the data object because this method merges arrays + // and so would change references to labels and datasets, preventing data updates. + var data = config.data = config.data || {}; + data.datasets = data.datasets || []; + data.labels = data.labels || []; + + config.options = mergeConfig( + core_defaults.global, + core_defaults[config.type], + config.options || {}); + + return config; +} + +function updateConfig(chart) { + var newOptions = chart.options; + + helpers$1.each(chart.scales, function(scale) { + core_layouts.removeBox(chart, scale); + }); + + newOptions = mergeConfig( + core_defaults.global, + core_defaults[chart.config.type], + newOptions); + + chart.options = chart.config.options = newOptions; + chart.ensureScalesHaveIDs(); + chart.buildOrUpdateScales(); + + // Tooltip + chart.tooltip._options = newOptions.tooltips; + chart.tooltip.initialize(); +} + +function positionIsHorizontal(position) { + return position === 'top' || position === 'bottom'; +} + +var Chart = function(item, config) { + this.construct(item, config); + return this; +}; + +helpers$1.extend(Chart.prototype, /** @lends Chart */ { + /** + * @private + */ + construct: function(item, config) { + var me = this; + + config = initConfig(config); + + var context = platform.acquireContext(item, config); + var canvas = context && context.canvas; + var height = canvas && canvas.height; + var width = canvas && canvas.width; + + me.id = helpers$1.uid(); + me.ctx = context; + me.canvas = canvas; + me.config = config; + me.width = width; + me.height = height; + me.aspectRatio = height ? width / height : null; + me.options = config.options; + me._bufferedRender = false; + + /** + * Provided for backward compatibility, Chart and Chart.Controller have been merged, + * the "instance" still need to be defined since it might be called from plugins. + * @prop Chart#chart + * @deprecated since version 2.6.0 + * @todo remove at version 3 + * @private + */ + me.chart = me; + me.controller = me; // chart.chart.controller #inception + + // Add the chart instance to the global namespace + Chart.instances[me.id] = me; + + // Define alias to the config data: `chart.data === chart.config.data` + Object.defineProperty(me, 'data', { + get: function() { + return me.config.data; + }, + set: function(value) { + me.config.data = value; + } + }); + + if (!context || !canvas) { + // The given item is not a compatible context2d element, let's return before finalizing + // the chart initialization but after setting basic chart / controller properties that + // can help to figure out that the chart is not valid (e.g chart.canvas !== null); + // https://github.com/chartjs/Chart.js/issues/2807 + console.error("Failed to create chart: can't acquire context from the given item"); + return; + } + + me.initialize(); + me.update(); + }, + + /** + * @private + */ + initialize: function() { + var me = this; + + // Before init plugin notification + core_plugins.notify(me, 'beforeInit'); + + helpers$1.retinaScale(me, me.options.devicePixelRatio); + + me.bindEvents(); + + if (me.options.responsive) { + // Initial resize before chart draws (must be silent to preserve initial animations). + me.resize(true); + } + + // Make sure scales have IDs and are built before we build any controllers. + me.ensureScalesHaveIDs(); + me.buildOrUpdateScales(); + me.initToolTip(); + + // After init plugin notification + core_plugins.notify(me, 'afterInit'); + + return me; + }, + + clear: function() { + helpers$1.canvas.clear(this); + return this; + }, + + stop: function() { + // Stops any current animation loop occurring + core_animations.cancelAnimation(this); + return this; + }, + + resize: function(silent) { + var me = this; + var options = me.options; + var canvas = me.canvas; + var aspectRatio = (options.maintainAspectRatio && me.aspectRatio) || null; + + // the canvas render width and height will be casted to integers so make sure that + // the canvas display style uses the same integer values to avoid blurring effect. + + // Set to 0 instead of canvas.size because the size defaults to 300x150 if the element is collapsed + var newWidth = Math.max(0, Math.floor(helpers$1.getMaximumWidth(canvas))); + var newHeight = Math.max(0, Math.floor(aspectRatio ? newWidth / aspectRatio : helpers$1.getMaximumHeight(canvas))); + + if (me.width === newWidth && me.height === newHeight) { + return; + } + + canvas.width = me.width = newWidth; + canvas.height = me.height = newHeight; + canvas.style.width = newWidth + 'px'; + canvas.style.height = newHeight + 'px'; + + helpers$1.retinaScale(me, options.devicePixelRatio); + + if (!silent) { + // Notify any plugins about the resize + var newSize = {width: newWidth, height: newHeight}; + core_plugins.notify(me, 'resize', [newSize]); + + // Notify of resize + if (options.onResize) { + options.onResize(me, newSize); + } + + me.stop(); + me.update({ + duration: options.responsiveAnimationDuration + }); + } + }, + + ensureScalesHaveIDs: function() { + var options = this.options; + var scalesOptions = options.scales || {}; + var scaleOptions = options.scale; + + helpers$1.each(scalesOptions.xAxes, function(xAxisOptions, index) { + xAxisOptions.id = xAxisOptions.id || ('x-axis-' + index); + }); + + helpers$1.each(scalesOptions.yAxes, function(yAxisOptions, index) { + yAxisOptions.id = yAxisOptions.id || ('y-axis-' + index); + }); + + if (scaleOptions) { + scaleOptions.id = scaleOptions.id || 'scale'; + } + }, + + /** + * Builds a map of scale ID to scale object for future lookup. + */ + buildOrUpdateScales: function() { + var me = this; + var options = me.options; + var scales = me.scales || {}; + var items = []; + var updated = Object.keys(scales).reduce(function(obj, id) { + obj[id] = false; + return obj; + }, {}); + + if (options.scales) { + items = items.concat( + (options.scales.xAxes || []).map(function(xAxisOptions) { + return {options: xAxisOptions, dtype: 'category', dposition: 'bottom'}; + }), + (options.scales.yAxes || []).map(function(yAxisOptions) { + return {options: yAxisOptions, dtype: 'linear', dposition: 'left'}; + }) + ); + } + + if (options.scale) { + items.push({ + options: options.scale, + dtype: 'radialLinear', + isDefault: true, + dposition: 'chartArea' + }); + } + + helpers$1.each(items, function(item) { + var scaleOptions = item.options; + var id = scaleOptions.id; + var scaleType = valueOrDefault$8(scaleOptions.type, item.dtype); + + if (positionIsHorizontal(scaleOptions.position) !== positionIsHorizontal(item.dposition)) { + scaleOptions.position = item.dposition; + } + + updated[id] = true; + var scale = null; + if (id in scales && scales[id].type === scaleType) { + scale = scales[id]; + scale.options = scaleOptions; + scale.ctx = me.ctx; + scale.chart = me; + } else { + var scaleClass = core_scaleService.getScaleConstructor(scaleType); + if (!scaleClass) { + return; + } + scale = new scaleClass({ + id: id, + type: scaleType, + options: scaleOptions, + ctx: me.ctx, + chart: me + }); + scales[scale.id] = scale; + } + + scale.mergeTicksOptions(); + + // TODO(SB): I think we should be able to remove this custom case (options.scale) + // and consider it as a regular scale part of the "scales"" map only! This would + // make the logic easier and remove some useless? custom code. + if (item.isDefault) { + me.scale = scale; + } + }); + // clear up discarded scales + helpers$1.each(updated, function(hasUpdated, id) { + if (!hasUpdated) { + delete scales[id]; + } + }); + + me.scales = scales; + + core_scaleService.addScalesToLayout(this); + }, + + buildOrUpdateControllers: function() { + var me = this; + var newControllers = []; + + helpers$1.each(me.data.datasets, function(dataset, datasetIndex) { + var meta = me.getDatasetMeta(datasetIndex); + var type = dataset.type || me.config.type; + + if (meta.type && meta.type !== type) { + me.destroyDatasetMeta(datasetIndex); + meta = me.getDatasetMeta(datasetIndex); + } + meta.type = type; + + if (meta.controller) { + meta.controller.updateIndex(datasetIndex); + meta.controller.linkScales(); + } else { + var ControllerClass = controllers[meta.type]; + if (ControllerClass === undefined) { + throw new Error('"' + meta.type + '" is not a chart type.'); + } + + meta.controller = new ControllerClass(me, datasetIndex); + newControllers.push(meta.controller); + } + }, me); + + return newControllers; + }, + + /** + * Reset the elements of all datasets + * @private + */ + resetElements: function() { + var me = this; + helpers$1.each(me.data.datasets, function(dataset, datasetIndex) { + me.getDatasetMeta(datasetIndex).controller.reset(); + }, me); + }, + + /** + * Resets the chart back to it's state before the initial animation + */ + reset: function() { + this.resetElements(); + this.tooltip.initialize(); + }, + + update: function(config) { + var me = this; + + if (!config || typeof config !== 'object') { + // backwards compatibility + config = { + duration: config, + lazy: arguments[1] + }; + } + + updateConfig(me); + + // plugins options references might have change, let's invalidate the cache + // https://github.com/chartjs/Chart.js/issues/5111#issuecomment-355934167 + core_plugins._invalidate(me); + + if (core_plugins.notify(me, 'beforeUpdate') === false) { + return; + } + + // In case the entire data object changed + me.tooltip._data = me.data; + + // Make sure dataset controllers are updated and new controllers are reset + var newControllers = me.buildOrUpdateControllers(); + + // Make sure all dataset controllers have correct meta data counts + helpers$1.each(me.data.datasets, function(dataset, datasetIndex) { + me.getDatasetMeta(datasetIndex).controller.buildOrUpdateElements(); + }, me); + + me.updateLayout(); + + // Can only reset the new controllers after the scales have been updated + if (me.options.animation && me.options.animation.duration) { + helpers$1.each(newControllers, function(controller) { + controller.reset(); + }); + } + + me.updateDatasets(); + + // Need to reset tooltip in case it is displayed with elements that are removed + // after update. + me.tooltip.initialize(); + + // Last active contains items that were previously in the tooltip. + // When we reset the tooltip, we need to clear it + me.lastActive = []; + + // Do this before render so that any plugins that need final scale updates can use it + core_plugins.notify(me, 'afterUpdate'); + + if (me._bufferedRender) { + me._bufferedRequest = { + duration: config.duration, + easing: config.easing, + lazy: config.lazy + }; + } else { + me.render(config); + } + }, + + /** + * Updates the chart layout unless a plugin returns `false` to the `beforeLayout` + * hook, in which case, plugins will not be called on `afterLayout`. + * @private + */ + updateLayout: function() { + var me = this; + + if (core_plugins.notify(me, 'beforeLayout') === false) { + return; + } + + core_layouts.update(this, this.width, this.height); + + /** + * Provided for backward compatibility, use `afterLayout` instead. + * @method IPlugin#afterScaleUpdate + * @deprecated since version 2.5.0 + * @todo remove at version 3 + * @private + */ + core_plugins.notify(me, 'afterScaleUpdate'); + core_plugins.notify(me, 'afterLayout'); + }, + + /** + * Updates all datasets unless a plugin returns `false` to the `beforeDatasetsUpdate` + * hook, in which case, plugins will not be called on `afterDatasetsUpdate`. + * @private + */ + updateDatasets: function() { + var me = this; + + if (core_plugins.notify(me, 'beforeDatasetsUpdate') === false) { + return; + } + + for (var i = 0, ilen = me.data.datasets.length; i < ilen; ++i) { + me.updateDataset(i); + } + + core_plugins.notify(me, 'afterDatasetsUpdate'); + }, + + /** + * Updates dataset at index unless a plugin returns `false` to the `beforeDatasetUpdate` + * hook, in which case, plugins will not be called on `afterDatasetUpdate`. + * @private + */ + updateDataset: function(index) { + var me = this; + var meta = me.getDatasetMeta(index); + var args = { + meta: meta, + index: index + }; + + if (core_plugins.notify(me, 'beforeDatasetUpdate', [args]) === false) { + return; + } + + meta.controller.update(); + + core_plugins.notify(me, 'afterDatasetUpdate', [args]); + }, + + render: function(config) { + var me = this; + + if (!config || typeof config !== 'object') { + // backwards compatibility + config = { + duration: config, + lazy: arguments[1] + }; + } + + var animationOptions = me.options.animation; + var duration = valueOrDefault$8(config.duration, animationOptions && animationOptions.duration); + var lazy = config.lazy; + + if (core_plugins.notify(me, 'beforeRender') === false) { + return; + } + + var onComplete = function(animation) { + core_plugins.notify(me, 'afterRender'); + helpers$1.callback(animationOptions && animationOptions.onComplete, [animation], me); + }; + + if (animationOptions && duration) { + var animation = new core_animation({ + numSteps: duration / 16.66, // 60 fps + easing: config.easing || animationOptions.easing, + + render: function(chart, animationObject) { + var easingFunction = helpers$1.easing.effects[animationObject.easing]; + var currentStep = animationObject.currentStep; + var stepDecimal = currentStep / animationObject.numSteps; + + chart.draw(easingFunction(stepDecimal), stepDecimal, currentStep); + }, + + onAnimationProgress: animationOptions.onProgress, + onAnimationComplete: onComplete + }); + + core_animations.addAnimation(me, animation, duration, lazy); + } else { + me.draw(); + + // See https://github.com/chartjs/Chart.js/issues/3781 + onComplete(new core_animation({numSteps: 0, chart: me})); + } + + return me; + }, + + draw: function(easingValue) { + var me = this; + + me.clear(); + + if (helpers$1.isNullOrUndef(easingValue)) { + easingValue = 1; + } + + me.transition(easingValue); + + if (me.width <= 0 || me.height <= 0) { + return; + } + + if (core_plugins.notify(me, 'beforeDraw', [easingValue]) === false) { + return; + } + + // Draw all the scales + helpers$1.each(me.boxes, function(box) { + box.draw(me.chartArea); + }, me); + + me.drawDatasets(easingValue); + me._drawTooltip(easingValue); + + core_plugins.notify(me, 'afterDraw', [easingValue]); + }, + + /** + * @private + */ + transition: function(easingValue) { + var me = this; + + for (var i = 0, ilen = (me.data.datasets || []).length; i < ilen; ++i) { + if (me.isDatasetVisible(i)) { + me.getDatasetMeta(i).controller.transition(easingValue); + } + } + + me.tooltip.transition(easingValue); + }, + + /** + * Draws all datasets unless a plugin returns `false` to the `beforeDatasetsDraw` + * hook, in which case, plugins will not be called on `afterDatasetsDraw`. + * @private + */ + drawDatasets: function(easingValue) { + var me = this; + + if (core_plugins.notify(me, 'beforeDatasetsDraw', [easingValue]) === false) { + return; + } + + // Draw datasets reversed to support proper line stacking + for (var i = (me.data.datasets || []).length - 1; i >= 0; --i) { + if (me.isDatasetVisible(i)) { + me.drawDataset(i, easingValue); + } + } + + core_plugins.notify(me, 'afterDatasetsDraw', [easingValue]); + }, + + /** + * Draws dataset at index unless a plugin returns `false` to the `beforeDatasetDraw` + * hook, in which case, plugins will not be called on `afterDatasetDraw`. + * @private + */ + drawDataset: function(index, easingValue) { + var me = this; + var meta = me.getDatasetMeta(index); + var args = { + meta: meta, + index: index, + easingValue: easingValue + }; + + if (core_plugins.notify(me, 'beforeDatasetDraw', [args]) === false) { + return; + } + + meta.controller.draw(easingValue); + + core_plugins.notify(me, 'afterDatasetDraw', [args]); + }, + + /** + * Draws tooltip unless a plugin returns `false` to the `beforeTooltipDraw` + * hook, in which case, plugins will not be called on `afterTooltipDraw`. + * @private + */ + _drawTooltip: function(easingValue) { + var me = this; + var tooltip = me.tooltip; + var args = { + tooltip: tooltip, + easingValue: easingValue + }; + + if (core_plugins.notify(me, 'beforeTooltipDraw', [args]) === false) { + return; + } + + tooltip.draw(); + + core_plugins.notify(me, 'afterTooltipDraw', [args]); + }, + + /** + * Get the single element that was clicked on + * @return An object containing the dataset index and element index of the matching element. Also contains the rectangle that was draw + */ + getElementAtEvent: function(e) { + return core_interaction.modes.single(this, e); + }, + + getElementsAtEvent: function(e) { + return core_interaction.modes.label(this, e, {intersect: true}); + }, + + getElementsAtXAxis: function(e) { + return core_interaction.modes['x-axis'](this, e, {intersect: true}); + }, + + getElementsAtEventForMode: function(e, mode, options) { + var method = core_interaction.modes[mode]; + if (typeof method === 'function') { + return method(this, e, options); + } + + return []; + }, + + getDatasetAtEvent: function(e) { + return core_interaction.modes.dataset(this, e, {intersect: true}); + }, + + getDatasetMeta: function(datasetIndex) { + var me = this; + var dataset = me.data.datasets[datasetIndex]; + if (!dataset._meta) { + dataset._meta = {}; + } + + var meta = dataset._meta[me.id]; + if (!meta) { + meta = dataset._meta[me.id] = { + type: null, + data: [], + dataset: null, + controller: null, + hidden: null, // See isDatasetVisible() comment + xAxisID: null, + yAxisID: null + }; + } + + return meta; + }, + + getVisibleDatasetCount: function() { + var count = 0; + for (var i = 0, ilen = this.data.datasets.length; i < ilen; ++i) { + if (this.isDatasetVisible(i)) { + count++; + } + } + return count; + }, + + isDatasetVisible: function(datasetIndex) { + var meta = this.getDatasetMeta(datasetIndex); + + // meta.hidden is a per chart dataset hidden flag override with 3 states: if true or false, + // the dataset.hidden value is ignored, else if null, the dataset hidden state is returned. + return typeof meta.hidden === 'boolean' ? !meta.hidden : !this.data.datasets[datasetIndex].hidden; + }, + + generateLegend: function() { + return this.options.legendCallback(this); + }, + + /** + * @private + */ + destroyDatasetMeta: function(datasetIndex) { + var id = this.id; + var dataset = this.data.datasets[datasetIndex]; + var meta = dataset._meta && dataset._meta[id]; + + if (meta) { + meta.controller.destroy(); + delete dataset._meta[id]; + } + }, + + destroy: function() { + var me = this; + var canvas = me.canvas; + var i, ilen; + + me.stop(); + + // dataset controllers need to cleanup associated data + for (i = 0, ilen = me.data.datasets.length; i < ilen; ++i) { + me.destroyDatasetMeta(i); + } + + if (canvas) { + me.unbindEvents(); + helpers$1.canvas.clear(me); + platform.releaseContext(me.ctx); + me.canvas = null; + me.ctx = null; + } + + core_plugins.notify(me, 'destroy'); + + delete Chart.instances[me.id]; + }, + + toBase64Image: function() { + return this.canvas.toDataURL.apply(this.canvas, arguments); + }, + + initToolTip: function() { + var me = this; + me.tooltip = new core_tooltip({ + _chart: me, + _chartInstance: me, // deprecated, backward compatibility + _data: me.data, + _options: me.options.tooltips + }, me); + }, + + /** + * @private + */ + bindEvents: function() { + var me = this; + var listeners = me._listeners = {}; + var listener = function() { + me.eventHandler.apply(me, arguments); + }; + + helpers$1.each(me.options.events, function(type) { + platform.addEventListener(me, type, listener); + listeners[type] = listener; + }); + + // Elements used to detect size change should not be injected for non responsive charts. + // See https://github.com/chartjs/Chart.js/issues/2210 + if (me.options.responsive) { + listener = function() { + me.resize(); + }; + + platform.addEventListener(me, 'resize', listener); + listeners.resize = listener; + } + }, + + /** + * @private + */ + unbindEvents: function() { + var me = this; + var listeners = me._listeners; + if (!listeners) { + return; + } + + delete me._listeners; + helpers$1.each(listeners, function(listener, type) { + platform.removeEventListener(me, type, listener); + }); + }, + + updateHoverStyle: function(elements, mode, enabled) { + var method = enabled ? 'setHoverStyle' : 'removeHoverStyle'; + var element, i, ilen; + + for (i = 0, ilen = elements.length; i < ilen; ++i) { + element = elements[i]; + if (element) { + this.getDatasetMeta(element._datasetIndex).controller[method](element); + } + } + }, + + /** + * @private + */ + eventHandler: function(e) { + var me = this; + var tooltip = me.tooltip; + + if (core_plugins.notify(me, 'beforeEvent', [e]) === false) { + return; + } + + // Buffer any update calls so that renders do not occur + me._bufferedRender = true; + me._bufferedRequest = null; + + var changed = me.handleEvent(e); + // for smooth tooltip animations issue #4989 + // the tooltip should be the source of change + // Animation check workaround: + // tooltip._start will be null when tooltip isn't animating + if (tooltip) { + changed = tooltip._start + ? tooltip.handleEvent(e) + : changed | tooltip.handleEvent(e); + } + + core_plugins.notify(me, 'afterEvent', [e]); + + var bufferedRequest = me._bufferedRequest; + if (bufferedRequest) { + // If we have an update that was triggered, we need to do a normal render + me.render(bufferedRequest); + } else if (changed && !me.animating) { + // If entering, leaving, or changing elements, animate the change via pivot + me.stop(); + + // We only need to render at this point. Updating will cause scales to be + // recomputed generating flicker & using more memory than necessary. + me.render({ + duration: me.options.hover.animationDuration, + lazy: true + }); + } + + me._bufferedRender = false; + me._bufferedRequest = null; + + return me; + }, + + /** + * Handle an event + * @private + * @param {IEvent} event the event to handle + * @return {boolean} true if the chart needs to re-render + */ + handleEvent: function(e) { + var me = this; + var options = me.options || {}; + var hoverOptions = options.hover; + var changed = false; + + me.lastActive = me.lastActive || []; + + // Find Active Elements for hover and tooltips + if (e.type === 'mouseout') { + me.active = []; + } else { + me.active = me.getElementsAtEventForMode(e, hoverOptions.mode, hoverOptions); + } + + // Invoke onHover hook + // Need to call with native event here to not break backwards compatibility + helpers$1.callback(options.onHover || options.hover.onHover, [e.native, me.active], me); + + if (e.type === 'mouseup' || e.type === 'click') { + if (options.onClick) { + // Use e.native here for backwards compatibility + options.onClick.call(me, e.native, me.active); + } + } + + // Remove styling for last active (even if it may still be active) + if (me.lastActive.length) { + me.updateHoverStyle(me.lastActive, hoverOptions.mode, false); + } + + // Built in hover styling + if (me.active.length && hoverOptions.mode) { + me.updateHoverStyle(me.active, hoverOptions.mode, true); + } + + changed = !helpers$1.arrayEquals(me.active, me.lastActive); + + // Remember Last Actives + me.lastActive = me.active; + + return changed; + } +}); + +/** + * NOTE(SB) We actually don't use this container anymore but we need to keep it + * for backward compatibility. Though, it can still be useful for plugins that + * would need to work on multiple charts?! + */ +Chart.instances = {}; + +var core_controller = Chart; + +// DEPRECATIONS + +/** + * Provided for backward compatibility, use Chart instead. + * @class Chart.Controller + * @deprecated since version 2.6 + * @todo remove at version 3 + * @private + */ +Chart.Controller = Chart; + +/** + * Provided for backward compatibility, not available anymore. + * @namespace Chart + * @deprecated since version 2.8 + * @todo remove at version 3 + * @private + */ +Chart.types = {}; + +/** + * Provided for backward compatibility, not available anymore. + * @namespace Chart.helpers.configMerge + * @deprecated since version 2.8.0 + * @todo remove at version 3 + * @private + */ +helpers$1.configMerge = mergeConfig; + +/** + * Provided for backward compatibility, not available anymore. + * @namespace Chart.helpers.scaleMerge + * @deprecated since version 2.8.0 + * @todo remove at version 3 + * @private + */ +helpers$1.scaleMerge = mergeScaleConfig; + +var core_helpers = function() { + + // -- Basic js utility methods + + helpers$1.where = function(collection, filterCallback) { + if (helpers$1.isArray(collection) && Array.prototype.filter) { + return collection.filter(filterCallback); + } + var filtered = []; + + helpers$1.each(collection, function(item) { + if (filterCallback(item)) { + filtered.push(item); + } + }); + + return filtered; + }; + helpers$1.findIndex = Array.prototype.findIndex ? + function(array, callback, scope) { + return array.findIndex(callback, scope); + } : + function(array, callback, scope) { + scope = scope === undefined ? array : scope; + for (var i = 0, ilen = array.length; i < ilen; ++i) { + if (callback.call(scope, array[i], i, array)) { + return i; + } + } + return -1; + }; + helpers$1.findNextWhere = function(arrayToSearch, filterCallback, startIndex) { + // Default to start of the array + if (helpers$1.isNullOrUndef(startIndex)) { + startIndex = -1; + } + for (var i = startIndex + 1; i < arrayToSearch.length; i++) { + var currentItem = arrayToSearch[i]; + if (filterCallback(currentItem)) { + return currentItem; + } + } + }; + helpers$1.findPreviousWhere = function(arrayToSearch, filterCallback, startIndex) { + // Default to end of the array + if (helpers$1.isNullOrUndef(startIndex)) { + startIndex = arrayToSearch.length; + } + for (var i = startIndex - 1; i >= 0; i--) { + var currentItem = arrayToSearch[i]; + if (filterCallback(currentItem)) { + return currentItem; + } + } + }; + + // -- Math methods + helpers$1.isNumber = function(n) { + return !isNaN(parseFloat(n)) && isFinite(n); + }; + helpers$1.almostEquals = function(x, y, epsilon) { + return Math.abs(x - y) < epsilon; + }; + helpers$1.almostWhole = function(x, epsilon) { + var rounded = Math.round(x); + return (((rounded - epsilon) < x) && ((rounded + epsilon) > x)); + }; + helpers$1.max = function(array) { + return array.reduce(function(max, value) { + if (!isNaN(value)) { + return Math.max(max, value); + } + return max; + }, Number.NEGATIVE_INFINITY); + }; + helpers$1.min = function(array) { + return array.reduce(function(min, value) { + if (!isNaN(value)) { + return Math.min(min, value); + } + return min; + }, Number.POSITIVE_INFINITY); + }; + helpers$1.sign = Math.sign ? + function(x) { + return Math.sign(x); + } : + function(x) { + x = +x; // convert to a number + if (x === 0 || isNaN(x)) { + return x; + } + return x > 0 ? 1 : -1; + }; + helpers$1.log10 = Math.log10 ? + function(x) { + return Math.log10(x); + } : + function(x) { + var exponent = Math.log(x) * Math.LOG10E; // Math.LOG10E = 1 / Math.LN10. + // Check for whole powers of 10, + // which due to floating point rounding error should be corrected. + var powerOf10 = Math.round(exponent); + var isPowerOf10 = x === Math.pow(10, powerOf10); + + return isPowerOf10 ? powerOf10 : exponent; + }; + helpers$1.toRadians = function(degrees) { + return degrees * (Math.PI / 180); + }; + helpers$1.toDegrees = function(radians) { + return radians * (180 / Math.PI); + }; + + /** + * Returns the number of decimal places + * i.e. the number of digits after the decimal point, of the value of this Number. + * @param {number} x - A number. + * @returns {number} The number of decimal places. + * @private + */ + helpers$1._decimalPlaces = function(x) { + if (!helpers$1.isFinite(x)) { + return; + } + var e = 1; + var p = 0; + while (Math.round(x * e) / e !== x) { + e *= 10; + p++; + } + return p; + }; + + // Gets the angle from vertical upright to the point about a centre. + helpers$1.getAngleFromPoint = function(centrePoint, anglePoint) { + var distanceFromXCenter = anglePoint.x - centrePoint.x; + var distanceFromYCenter = anglePoint.y - centrePoint.y; + var radialDistanceFromCenter = Math.sqrt(distanceFromXCenter * distanceFromXCenter + distanceFromYCenter * distanceFromYCenter); + + var angle = Math.atan2(distanceFromYCenter, distanceFromXCenter); + + if (angle < (-0.5 * Math.PI)) { + angle += 2.0 * Math.PI; // make sure the returned angle is in the range of (-PI/2, 3PI/2] + } + + return { + angle: angle, + distance: radialDistanceFromCenter + }; + }; + helpers$1.distanceBetweenPoints = function(pt1, pt2) { + return Math.sqrt(Math.pow(pt2.x - pt1.x, 2) + Math.pow(pt2.y - pt1.y, 2)); + }; + + /** + * Provided for backward compatibility, not available anymore + * @function Chart.helpers.aliasPixel + * @deprecated since version 2.8.0 + * @todo remove at version 3 + */ + helpers$1.aliasPixel = function(pixelWidth) { + return (pixelWidth % 2 === 0) ? 0 : 0.5; + }; + + /** + * Returns the aligned pixel value to avoid anti-aliasing blur + * @param {Chart} chart - The chart instance. + * @param {number} pixel - A pixel value. + * @param {number} width - The width of the element. + * @returns {number} The aligned pixel value. + * @private + */ + helpers$1._alignPixel = function(chart, pixel, width) { + var devicePixelRatio = chart.currentDevicePixelRatio; + var halfWidth = width / 2; + return Math.round((pixel - halfWidth) * devicePixelRatio) / devicePixelRatio + halfWidth; + }; + + helpers$1.splineCurve = function(firstPoint, middlePoint, afterPoint, t) { + // Props to Rob Spencer at scaled innovation for his post on splining between points + // http://scaledinnovation.com/analytics/splines/aboutSplines.html + + // This function must also respect "skipped" points + + var previous = firstPoint.skip ? middlePoint : firstPoint; + var current = middlePoint; + var next = afterPoint.skip ? middlePoint : afterPoint; + + var d01 = Math.sqrt(Math.pow(current.x - previous.x, 2) + Math.pow(current.y - previous.y, 2)); + var d12 = Math.sqrt(Math.pow(next.x - current.x, 2) + Math.pow(next.y - current.y, 2)); + + var s01 = d01 / (d01 + d12); + var s12 = d12 / (d01 + d12); + + // If all points are the same, s01 & s02 will be inf + s01 = isNaN(s01) ? 0 : s01; + s12 = isNaN(s12) ? 0 : s12; + + var fa = t * s01; // scaling factor for triangle Ta + var fb = t * s12; + + return { + previous: { + x: current.x - fa * (next.x - previous.x), + y: current.y - fa * (next.y - previous.y) + }, + next: { + x: current.x + fb * (next.x - previous.x), + y: current.y + fb * (next.y - previous.y) + } + }; + }; + helpers$1.EPSILON = Number.EPSILON || 1e-14; + helpers$1.splineCurveMonotone = function(points) { + // This function calculates Bézier control points in a similar way than |splineCurve|, + // but preserves monotonicity of the provided data and ensures no local extremums are added + // between the dataset discrete points due to the interpolation. + // See : https://en.wikipedia.org/wiki/Monotone_cubic_interpolation + + var pointsWithTangents = (points || []).map(function(point) { + return { + model: point._model, + deltaK: 0, + mK: 0 + }; + }); + + // Calculate slopes (deltaK) and initialize tangents (mK) + var pointsLen = pointsWithTangents.length; + var i, pointBefore, pointCurrent, pointAfter; + for (i = 0; i < pointsLen; ++i) { + pointCurrent = pointsWithTangents[i]; + if (pointCurrent.model.skip) { + continue; + } + + pointBefore = i > 0 ? pointsWithTangents[i - 1] : null; + pointAfter = i < pointsLen - 1 ? pointsWithTangents[i + 1] : null; + if (pointAfter && !pointAfter.model.skip) { + var slopeDeltaX = (pointAfter.model.x - pointCurrent.model.x); + + // In the case of two points that appear at the same x pixel, slopeDeltaX is 0 + pointCurrent.deltaK = slopeDeltaX !== 0 ? (pointAfter.model.y - pointCurrent.model.y) / slopeDeltaX : 0; + } + + if (!pointBefore || pointBefore.model.skip) { + pointCurrent.mK = pointCurrent.deltaK; + } else if (!pointAfter || pointAfter.model.skip) { + pointCurrent.mK = pointBefore.deltaK; + } else if (this.sign(pointBefore.deltaK) !== this.sign(pointCurrent.deltaK)) { + pointCurrent.mK = 0; + } else { + pointCurrent.mK = (pointBefore.deltaK + pointCurrent.deltaK) / 2; + } + } + + // Adjust tangents to ensure monotonic properties + var alphaK, betaK, tauK, squaredMagnitude; + for (i = 0; i < pointsLen - 1; ++i) { + pointCurrent = pointsWithTangents[i]; + pointAfter = pointsWithTangents[i + 1]; + if (pointCurrent.model.skip || pointAfter.model.skip) { + continue; + } + + if (helpers$1.almostEquals(pointCurrent.deltaK, 0, this.EPSILON)) { + pointCurrent.mK = pointAfter.mK = 0; + continue; + } + + alphaK = pointCurrent.mK / pointCurrent.deltaK; + betaK = pointAfter.mK / pointCurrent.deltaK; + squaredMagnitude = Math.pow(alphaK, 2) + Math.pow(betaK, 2); + if (squaredMagnitude <= 9) { + continue; + } + + tauK = 3 / Math.sqrt(squaredMagnitude); + pointCurrent.mK = alphaK * tauK * pointCurrent.deltaK; + pointAfter.mK = betaK * tauK * pointCurrent.deltaK; + } + + // Compute control points + var deltaX; + for (i = 0; i < pointsLen; ++i) { + pointCurrent = pointsWithTangents[i]; + if (pointCurrent.model.skip) { + continue; + } + + pointBefore = i > 0 ? pointsWithTangents[i - 1] : null; + pointAfter = i < pointsLen - 1 ? pointsWithTangents[i + 1] : null; + if (pointBefore && !pointBefore.model.skip) { + deltaX = (pointCurrent.model.x - pointBefore.model.x) / 3; + pointCurrent.model.controlPointPreviousX = pointCurrent.model.x - deltaX; + pointCurrent.model.controlPointPreviousY = pointCurrent.model.y - deltaX * pointCurrent.mK; + } + if (pointAfter && !pointAfter.model.skip) { + deltaX = (pointAfter.model.x - pointCurrent.model.x) / 3; + pointCurrent.model.controlPointNextX = pointCurrent.model.x + deltaX; + pointCurrent.model.controlPointNextY = pointCurrent.model.y + deltaX * pointCurrent.mK; + } + } + }; + helpers$1.nextItem = function(collection, index, loop) { + if (loop) { + return index >= collection.length - 1 ? collection[0] : collection[index + 1]; + } + return index >= collection.length - 1 ? collection[collection.length - 1] : collection[index + 1]; + }; + helpers$1.previousItem = function(collection, index, loop) { + if (loop) { + return index <= 0 ? collection[collection.length - 1] : collection[index - 1]; + } + return index <= 0 ? collection[0] : collection[index - 1]; + }; + // Implementation of the nice number algorithm used in determining where axis labels will go + helpers$1.niceNum = function(range, round) { + var exponent = Math.floor(helpers$1.log10(range)); + var fraction = range / Math.pow(10, exponent); + var niceFraction; + + if (round) { + if (fraction < 1.5) { + niceFraction = 1; + } else if (fraction < 3) { + niceFraction = 2; + } else if (fraction < 7) { + niceFraction = 5; + } else { + niceFraction = 10; + } + } else if (fraction <= 1.0) { + niceFraction = 1; + } else if (fraction <= 2) { + niceFraction = 2; + } else if (fraction <= 5) { + niceFraction = 5; + } else { + niceFraction = 10; + } + + return niceFraction * Math.pow(10, exponent); + }; + // Request animation polyfill - https://www.paulirish.com/2011/requestanimationframe-for-smart-animating/ + helpers$1.requestAnimFrame = (function() { + if (typeof window === 'undefined') { + return function(callback) { + callback(); + }; + } + return window.requestAnimationFrame || + window.webkitRequestAnimationFrame || + window.mozRequestAnimationFrame || + window.oRequestAnimationFrame || + window.msRequestAnimationFrame || + function(callback) { + return window.setTimeout(callback, 1000 / 60); + }; + }()); + // -- DOM methods + helpers$1.getRelativePosition = function(evt, chart) { + var mouseX, mouseY; + var e = evt.originalEvent || evt; + var canvas = evt.target || evt.srcElement; + var boundingRect = canvas.getBoundingClientRect(); + + var touches = e.touches; + if (touches && touches.length > 0) { + mouseX = touches[0].clientX; + mouseY = touches[0].clientY; + + } else { + mouseX = e.clientX; + mouseY = e.clientY; + } + + // Scale mouse coordinates into canvas coordinates + // by following the pattern laid out by 'jerryj' in the comments of + // https://www.html5canvastutorials.com/advanced/html5-canvas-mouse-coordinates/ + var paddingLeft = parseFloat(helpers$1.getStyle(canvas, 'padding-left')); + var paddingTop = parseFloat(helpers$1.getStyle(canvas, 'padding-top')); + var paddingRight = parseFloat(helpers$1.getStyle(canvas, 'padding-right')); + var paddingBottom = parseFloat(helpers$1.getStyle(canvas, 'padding-bottom')); + var width = boundingRect.right - boundingRect.left - paddingLeft - paddingRight; + var height = boundingRect.bottom - boundingRect.top - paddingTop - paddingBottom; + + // We divide by the current device pixel ratio, because the canvas is scaled up by that amount in each direction. However + // the backend model is in unscaled coordinates. Since we are going to deal with our model coordinates, we go back here + mouseX = Math.round((mouseX - boundingRect.left - paddingLeft) / (width) * canvas.width / chart.currentDevicePixelRatio); + mouseY = Math.round((mouseY - boundingRect.top - paddingTop) / (height) * canvas.height / chart.currentDevicePixelRatio); + + return { + x: mouseX, + y: mouseY + }; + + }; + + // Private helper function to convert max-width/max-height values that may be percentages into a number + function parseMaxStyle(styleValue, node, parentProperty) { + var valueInPixels; + if (typeof styleValue === 'string') { + valueInPixels = parseInt(styleValue, 10); + + if (styleValue.indexOf('%') !== -1) { + // percentage * size in dimension + valueInPixels = valueInPixels / 100 * node.parentNode[parentProperty]; + } + } else { + valueInPixels = styleValue; + } + + return valueInPixels; + } + + /** + * Returns if the given value contains an effective constraint. + * @private + */ + function isConstrainedValue(value) { + return value !== undefined && value !== null && value !== 'none'; + } + + /** + * Returns the max width or height of the given DOM node in a cross-browser compatible fashion + * @param {HTMLElement} domNode - the node to check the constraint on + * @param {string} maxStyle - the style that defines the maximum for the direction we are using ('max-width' / 'max-height') + * @param {string} percentageProperty - property of parent to use when calculating width as a percentage + * @see {@link https://www.nathanaeljones.com/blog/2013/reading-max-width-cross-browser} + */ + function getConstraintDimension(domNode, maxStyle, percentageProperty) { + var view = document.defaultView; + var parentNode = helpers$1._getParentNode(domNode); + var constrainedNode = view.getComputedStyle(domNode)[maxStyle]; + var constrainedContainer = view.getComputedStyle(parentNode)[maxStyle]; + var hasCNode = isConstrainedValue(constrainedNode); + var hasCContainer = isConstrainedValue(constrainedContainer); + var infinity = Number.POSITIVE_INFINITY; + + if (hasCNode || hasCContainer) { + return Math.min( + hasCNode ? parseMaxStyle(constrainedNode, domNode, percentageProperty) : infinity, + hasCContainer ? parseMaxStyle(constrainedContainer, parentNode, percentageProperty) : infinity); + } + + return 'none'; + } + // returns Number or undefined if no constraint + helpers$1.getConstraintWidth = function(domNode) { + return getConstraintDimension(domNode, 'max-width', 'clientWidth'); + }; + // returns Number or undefined if no constraint + helpers$1.getConstraintHeight = function(domNode) { + return getConstraintDimension(domNode, 'max-height', 'clientHeight'); + }; + /** + * @private + */ + helpers$1._calculatePadding = function(container, padding, parentDimension) { + padding = helpers$1.getStyle(container, padding); + + return padding.indexOf('%') > -1 ? parentDimension * parseInt(padding, 10) / 100 : parseInt(padding, 10); + }; + /** + * @private + */ + helpers$1._getParentNode = function(domNode) { + var parent = domNode.parentNode; + if (parent && parent.toString() === '[object ShadowRoot]') { + parent = parent.host; + } + return parent; + }; + helpers$1.getMaximumWidth = function(domNode) { + var container = helpers$1._getParentNode(domNode); + if (!container) { + return domNode.clientWidth; + } + + var clientWidth = container.clientWidth; + var paddingLeft = helpers$1._calculatePadding(container, 'padding-left', clientWidth); + var paddingRight = helpers$1._calculatePadding(container, 'padding-right', clientWidth); + + var w = clientWidth - paddingLeft - paddingRight; + var cw = helpers$1.getConstraintWidth(domNode); + return isNaN(cw) ? w : Math.min(w, cw); + }; + helpers$1.getMaximumHeight = function(domNode) { + var container = helpers$1._getParentNode(domNode); + if (!container) { + return domNode.clientHeight; + } + + var clientHeight = container.clientHeight; + var paddingTop = helpers$1._calculatePadding(container, 'padding-top', clientHeight); + var paddingBottom = helpers$1._calculatePadding(container, 'padding-bottom', clientHeight); + + var h = clientHeight - paddingTop - paddingBottom; + var ch = helpers$1.getConstraintHeight(domNode); + return isNaN(ch) ? h : Math.min(h, ch); + }; + helpers$1.getStyle = function(el, property) { + return el.currentStyle ? + el.currentStyle[property] : + document.defaultView.getComputedStyle(el, null).getPropertyValue(property); + }; + helpers$1.retinaScale = function(chart, forceRatio) { + var pixelRatio = chart.currentDevicePixelRatio = forceRatio || (typeof window !== 'undefined' && window.devicePixelRatio) || 1; + if (pixelRatio === 1) { + return; + } + + var canvas = chart.canvas; + var height = chart.height; + var width = chart.width; + + canvas.height = height * pixelRatio; + canvas.width = width * pixelRatio; + chart.ctx.scale(pixelRatio, pixelRatio); + + // If no style has been set on the canvas, the render size is used as display size, + // making the chart visually bigger, so let's enforce it to the "correct" values. + // See https://github.com/chartjs/Chart.js/issues/3575 + if (!canvas.style.height && !canvas.style.width) { + canvas.style.height = height + 'px'; + canvas.style.width = width + 'px'; + } + }; + // -- Canvas methods + helpers$1.fontString = function(pixelSize, fontStyle, fontFamily) { + return fontStyle + ' ' + pixelSize + 'px ' + fontFamily; + }; + helpers$1.longestText = function(ctx, font, arrayOfThings, cache) { + cache = cache || {}; + var data = cache.data = cache.data || {}; + var gc = cache.garbageCollect = cache.garbageCollect || []; + + if (cache.font !== font) { + data = cache.data = {}; + gc = cache.garbageCollect = []; + cache.font = font; + } + + ctx.font = font; + var longest = 0; + helpers$1.each(arrayOfThings, function(thing) { + // Undefined strings and arrays should not be measured + if (thing !== undefined && thing !== null && helpers$1.isArray(thing) !== true) { + longest = helpers$1.measureText(ctx, data, gc, longest, thing); + } else if (helpers$1.isArray(thing)) { + // if it is an array lets measure each element + // to do maybe simplify this function a bit so we can do this more recursively? + helpers$1.each(thing, function(nestedThing) { + // Undefined strings and arrays should not be measured + if (nestedThing !== undefined && nestedThing !== null && !helpers$1.isArray(nestedThing)) { + longest = helpers$1.measureText(ctx, data, gc, longest, nestedThing); + } + }); + } + }); + + var gcLen = gc.length / 2; + if (gcLen > arrayOfThings.length) { + for (var i = 0; i < gcLen; i++) { + delete data[gc[i]]; + } + gc.splice(0, gcLen); + } + return longest; + }; + helpers$1.measureText = function(ctx, data, gc, longest, string) { + var textWidth = data[string]; + if (!textWidth) { + textWidth = data[string] = ctx.measureText(string).width; + gc.push(string); + } + if (textWidth > longest) { + longest = textWidth; + } + return longest; + }; + helpers$1.numberOfLabelLines = function(arrayOfThings) { + var numberOfLines = 1; + helpers$1.each(arrayOfThings, function(thing) { + if (helpers$1.isArray(thing)) { + if (thing.length > numberOfLines) { + numberOfLines = thing.length; + } + } + }); + return numberOfLines; + }; + + helpers$1.color = !chartjsColor ? + function(value) { + console.error('Color.js not found!'); + return value; + } : + function(value) { + /* global CanvasGradient */ + if (value instanceof CanvasGradient) { + value = core_defaults.global.defaultColor; + } + + return chartjsColor(value); + }; + + helpers$1.getHoverColor = function(colorValue) { + /* global CanvasPattern */ + return (colorValue instanceof CanvasPattern || colorValue instanceof CanvasGradient) ? + colorValue : + helpers$1.color(colorValue).saturate(0.5).darken(0.1).rgbString(); + }; +}; + +function abstract() { + throw new Error( + 'This method is not implemented: either no adapter can ' + + 'be found or an incomplete integration was provided.' + ); +} + +/** + * Date adapter (current used by the time scale) + * @namespace Chart._adapters._date + * @memberof Chart._adapters + * @private + */ + +/** + * Currently supported unit string values. + * @typedef {('millisecond'|'second'|'minute'|'hour'|'day'|'week'|'month'|'quarter'|'year')} + * @memberof Chart._adapters._date + * @name Unit + */ + +/** + * @class + */ +function DateAdapter(options) { + this.options = options || {}; +} + +helpers$1.extend(DateAdapter.prototype, /** @lends DateAdapter */ { + /** + * Returns a map of time formats for the supported formatting units defined + * in Unit as well as 'datetime' representing a detailed date/time string. + * @returns {{string: string}} + */ + formats: abstract, + + /** + * Parses the given `value` and return the associated timestamp. + * @param {any} value - the value to parse (usually comes from the data) + * @param {string} [format] - the expected data format + * @returns {(number|null)} + * @function + */ + parse: abstract, + + /** + * Returns the formatted date in the specified `format` for a given `timestamp`. + * @param {number} timestamp - the timestamp to format + * @param {string} format - the date/time token + * @return {string} + * @function + */ + format: abstract, + + /** + * Adds the specified `amount` of `unit` to the given `timestamp`. + * @param {number} timestamp - the input timestamp + * @param {number} amount - the amount to add + * @param {Unit} unit - the unit as string + * @return {number} + * @function + */ + add: abstract, + + /** + * Returns the number of `unit` between the given timestamps. + * @param {number} max - the input timestamp (reference) + * @param {number} min - the timestamp to substract + * @param {Unit} unit - the unit as string + * @return {number} + * @function + */ + diff: abstract, + + /** + * Returns start of `unit` for the given `timestamp`. + * @param {number} timestamp - the input timestamp + * @param {Unit} unit - the unit as string + * @param {number} [weekday] - the ISO day of the week with 1 being Monday + * and 7 being Sunday (only needed if param *unit* is `isoWeek`). + * @function + */ + startOf: abstract, + + /** + * Returns end of `unit` for the given `timestamp`. + * @param {number} timestamp - the input timestamp + * @param {Unit} unit - the unit as string + * @function + */ + endOf: abstract, + + // DEPRECATIONS + + /** + * Provided for backward compatibility for scale.getValueForPixel(), + * this method should be overridden only by the moment adapter. + * @deprecated since version 2.8.0 + * @todo remove at version 3 + * @private + */ + _create: function(value) { + return value; + } +}); + +DateAdapter.override = function(members) { + helpers$1.extend(DateAdapter.prototype, members); +}; + +var _date = DateAdapter; + +var core_adapters = { + _date: _date +}; + +/** + * Namespace to hold static tick generation functions + * @namespace Chart.Ticks + */ +var core_ticks = { + /** + * Namespace to hold formatters for different types of ticks + * @namespace Chart.Ticks.formatters + */ + formatters: { + /** + * Formatter for value labels + * @method Chart.Ticks.formatters.values + * @param value the value to display + * @return {string|string[]} the label to display + */ + values: function(value) { + return helpers$1.isArray(value) ? value : '' + value; + }, + + /** + * Formatter for linear numeric ticks + * @method Chart.Ticks.formatters.linear + * @param tickValue {number} the value to be formatted + * @param index {number} the position of the tickValue parameter in the ticks array + * @param ticks {number[]} the list of ticks being converted + * @return {string} string representation of the tickValue parameter + */ + linear: function(tickValue, index, ticks) { + // If we have lots of ticks, don't use the ones + var delta = ticks.length > 3 ? ticks[2] - ticks[1] : ticks[1] - ticks[0]; + + // If we have a number like 2.5 as the delta, figure out how many decimal places we need + if (Math.abs(delta) > 1) { + if (tickValue !== Math.floor(tickValue)) { + // not an integer + delta = tickValue - Math.floor(tickValue); + } + } + + var logDelta = helpers$1.log10(Math.abs(delta)); + var tickString = ''; + + if (tickValue !== 0) { + var maxTick = Math.max(Math.abs(ticks[0]), Math.abs(ticks[ticks.length - 1])); + if (maxTick < 1e-4) { // all ticks are small numbers; use scientific notation + var logTick = helpers$1.log10(Math.abs(tickValue)); + tickString = tickValue.toExponential(Math.floor(logTick) - Math.floor(logDelta)); + } else { + var numDecimal = -1 * Math.floor(logDelta); + numDecimal = Math.max(Math.min(numDecimal, 20), 0); // toFixed has a max of 20 decimal places + tickString = tickValue.toFixed(numDecimal); + } + } else { + tickString = '0'; // never show decimal places for 0 + } + + return tickString; + }, + + logarithmic: function(tickValue, index, ticks) { + var remain = tickValue / (Math.pow(10, Math.floor(helpers$1.log10(tickValue)))); + + if (tickValue === 0) { + return '0'; + } else if (remain === 1 || remain === 2 || remain === 5 || index === 0 || index === ticks.length - 1) { + return tickValue.toExponential(); + } + return ''; + } + } +}; + +var valueOrDefault$9 = helpers$1.valueOrDefault; +var valueAtIndexOrDefault = helpers$1.valueAtIndexOrDefault; + +core_defaults._set('scale', { + display: true, + position: 'left', + offset: false, + + // grid line settings + gridLines: { + display: true, + color: 'rgba(0, 0, 0, 0.1)', + lineWidth: 1, + drawBorder: true, + drawOnChartArea: true, + drawTicks: true, + tickMarkLength: 10, + zeroLineWidth: 1, + zeroLineColor: 'rgba(0,0,0,0.25)', + zeroLineBorderDash: [], + zeroLineBorderDashOffset: 0.0, + offsetGridLines: false, + borderDash: [], + borderDashOffset: 0.0 + }, + + // scale label + scaleLabel: { + // display property + display: false, + + // actual label + labelString: '', + + // top/bottom padding + padding: { + top: 4, + bottom: 4 + } + }, + + // label settings + ticks: { + beginAtZero: false, + minRotation: 0, + maxRotation: 50, + mirror: false, + padding: 0, + reverse: false, + display: true, + autoSkip: true, + autoSkipPadding: 0, + labelOffset: 0, + // We pass through arrays to be rendered as multiline labels, we convert Others to strings here. + callback: core_ticks.formatters.values, + minor: {}, + major: {} + } +}); + +function labelsFromTicks(ticks) { + var labels = []; + var i, ilen; + + for (i = 0, ilen = ticks.length; i < ilen; ++i) { + labels.push(ticks[i].label); + } + + return labels; +} + +function getPixelForGridLine(scale, index, offsetGridLines) { + var lineValue = scale.getPixelForTick(index); + + if (offsetGridLines) { + if (scale.getTicks().length === 1) { + lineValue -= scale.isHorizontal() ? + Math.max(lineValue - scale.left, scale.right - lineValue) : + Math.max(lineValue - scale.top, scale.bottom - lineValue); + } else if (index === 0) { + lineValue -= (scale.getPixelForTick(1) - lineValue) / 2; + } else { + lineValue -= (lineValue - scale.getPixelForTick(index - 1)) / 2; + } + } + return lineValue; +} + +function computeTextSize(context, tick, font) { + return helpers$1.isArray(tick) ? + helpers$1.longestText(context, font, tick) : + context.measureText(tick).width; +} + +var core_scale = core_element.extend({ + /** + * Get the padding needed for the scale + * @method getPadding + * @private + * @returns {Padding} the necessary padding + */ + getPadding: function() { + var me = this; + return { + left: me.paddingLeft || 0, + top: me.paddingTop || 0, + right: me.paddingRight || 0, + bottom: me.paddingBottom || 0 + }; + }, + + /** + * Returns the scale tick objects ({label, major}) + * @since 2.7 + */ + getTicks: function() { + return this._ticks; + }, + + // These methods are ordered by lifecyle. Utilities then follow. + // Any function defined here is inherited by all scale types. + // Any function can be extended by the scale type + + mergeTicksOptions: function() { + var ticks = this.options.ticks; + if (ticks.minor === false) { + ticks.minor = { + display: false + }; + } + if (ticks.major === false) { + ticks.major = { + display: false + }; + } + for (var key in ticks) { + if (key !== 'major' && key !== 'minor') { + if (typeof ticks.minor[key] === 'undefined') { + ticks.minor[key] = ticks[key]; + } + if (typeof ticks.major[key] === 'undefined') { + ticks.major[key] = ticks[key]; + } + } + } + }, + beforeUpdate: function() { + helpers$1.callback(this.options.beforeUpdate, [this]); + }, + + update: function(maxWidth, maxHeight, margins) { + var me = this; + var i, ilen, labels, label, ticks, tick; + + // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;) + me.beforeUpdate(); + + // Absorb the master measurements + me.maxWidth = maxWidth; + me.maxHeight = maxHeight; + me.margins = helpers$1.extend({ + left: 0, + right: 0, + top: 0, + bottom: 0 + }, margins); + + me._maxLabelLines = 0; + me.longestLabelWidth = 0; + me.longestTextCache = me.longestTextCache || {}; + + // Dimensions + me.beforeSetDimensions(); + me.setDimensions(); + me.afterSetDimensions(); + + // Data min/max + me.beforeDataLimits(); + me.determineDataLimits(); + me.afterDataLimits(); + + // Ticks - `this.ticks` is now DEPRECATED! + // Internal ticks are now stored as objects in the PRIVATE `this._ticks` member + // and must not be accessed directly from outside this class. `this.ticks` being + // around for long time and not marked as private, we can't change its structure + // without unexpected breaking changes. If you need to access the scale ticks, + // use scale.getTicks() instead. + + me.beforeBuildTicks(); + + // New implementations should return an array of objects but for BACKWARD COMPAT, + // we still support no return (`this.ticks` internally set by calling this method). + ticks = me.buildTicks() || []; + + // Allow modification of ticks in callback. + ticks = me.afterBuildTicks(ticks) || ticks; + + me.beforeTickToLabelConversion(); + + // New implementations should return the formatted tick labels but for BACKWARD + // COMPAT, we still support no return (`this.ticks` internally changed by calling + // this method and supposed to contain only string values). + labels = me.convertTicksToLabels(ticks) || me.ticks; + + me.afterTickToLabelConversion(); + + me.ticks = labels; // BACKWARD COMPATIBILITY + + // IMPORTANT: from this point, we consider that `this.ticks` will NEVER change! + + // BACKWARD COMPAT: synchronize `_ticks` with labels (so potentially `this.ticks`) + for (i = 0, ilen = labels.length; i < ilen; ++i) { + label = labels[i]; + tick = ticks[i]; + if (!tick) { + ticks.push(tick = { + label: label, + major: false + }); + } else { + tick.label = label; + } + } + + me._ticks = ticks; + + // Tick Rotation + me.beforeCalculateTickRotation(); + me.calculateTickRotation(); + me.afterCalculateTickRotation(); + // Fit + me.beforeFit(); + me.fit(); + me.afterFit(); + // + me.afterUpdate(); + + return me.minSize; + + }, + afterUpdate: function() { + helpers$1.callback(this.options.afterUpdate, [this]); + }, + + // + + beforeSetDimensions: function() { + helpers$1.callback(this.options.beforeSetDimensions, [this]); + }, + setDimensions: function() { + var me = this; + // Set the unconstrained dimension before label rotation + if (me.isHorizontal()) { + // Reset position before calculating rotation + me.width = me.maxWidth; + me.left = 0; + me.right = me.width; + } else { + me.height = me.maxHeight; + + // Reset position before calculating rotation + me.top = 0; + me.bottom = me.height; + } + + // Reset padding + me.paddingLeft = 0; + me.paddingTop = 0; + me.paddingRight = 0; + me.paddingBottom = 0; + }, + afterSetDimensions: function() { + helpers$1.callback(this.options.afterSetDimensions, [this]); + }, + + // Data limits + beforeDataLimits: function() { + helpers$1.callback(this.options.beforeDataLimits, [this]); + }, + determineDataLimits: helpers$1.noop, + afterDataLimits: function() { + helpers$1.callback(this.options.afterDataLimits, [this]); + }, + + // + beforeBuildTicks: function() { + helpers$1.callback(this.options.beforeBuildTicks, [this]); + }, + buildTicks: helpers$1.noop, + afterBuildTicks: function(ticks) { + var me = this; + // ticks is empty for old axis implementations here + if (helpers$1.isArray(ticks) && ticks.length) { + return helpers$1.callback(me.options.afterBuildTicks, [me, ticks]); + } + // Support old implementations (that modified `this.ticks` directly in buildTicks) + me.ticks = helpers$1.callback(me.options.afterBuildTicks, [me, me.ticks]) || me.ticks; + return ticks; + }, + + beforeTickToLabelConversion: function() { + helpers$1.callback(this.options.beforeTickToLabelConversion, [this]); + }, + convertTicksToLabels: function() { + var me = this; + // Convert ticks to strings + var tickOpts = me.options.ticks; + me.ticks = me.ticks.map(tickOpts.userCallback || tickOpts.callback, this); + }, + afterTickToLabelConversion: function() { + helpers$1.callback(this.options.afterTickToLabelConversion, [this]); + }, + + // + + beforeCalculateTickRotation: function() { + helpers$1.callback(this.options.beforeCalculateTickRotation, [this]); + }, + calculateTickRotation: function() { + var me = this; + var context = me.ctx; + var tickOpts = me.options.ticks; + var labels = labelsFromTicks(me._ticks); + + // Get the width of each grid by calculating the difference + // between x offsets between 0 and 1. + var tickFont = helpers$1.options._parseFont(tickOpts); + context.font = tickFont.string; + + var labelRotation = tickOpts.minRotation || 0; + + if (labels.length && me.options.display && me.isHorizontal()) { + var originalLabelWidth = helpers$1.longestText(context, tickFont.string, labels, me.longestTextCache); + var labelWidth = originalLabelWidth; + var cosRotation, sinRotation; + + // Allow 3 pixels x2 padding either side for label readability + var tickWidth = me.getPixelForTick(1) - me.getPixelForTick(0) - 6; + + // Max label rotation can be set or default to 90 - also act as a loop counter + while (labelWidth > tickWidth && labelRotation < tickOpts.maxRotation) { + var angleRadians = helpers$1.toRadians(labelRotation); + cosRotation = Math.cos(angleRadians); + sinRotation = Math.sin(angleRadians); + + if (sinRotation * originalLabelWidth > me.maxHeight) { + // go back one step + labelRotation--; + break; + } + + labelRotation++; + labelWidth = cosRotation * originalLabelWidth; + } + } + + me.labelRotation = labelRotation; + }, + afterCalculateTickRotation: function() { + helpers$1.callback(this.options.afterCalculateTickRotation, [this]); + }, + + // + + beforeFit: function() { + helpers$1.callback(this.options.beforeFit, [this]); + }, + fit: function() { + var me = this; + // Reset + var minSize = me.minSize = { + width: 0, + height: 0 + }; + + var labels = labelsFromTicks(me._ticks); + + var opts = me.options; + var tickOpts = opts.ticks; + var scaleLabelOpts = opts.scaleLabel; + var gridLineOpts = opts.gridLines; + var display = me._isVisible(); + var position = opts.position; + var isHorizontal = me.isHorizontal(); + + var parseFont = helpers$1.options._parseFont; + var tickFont = parseFont(tickOpts); + var tickMarkLength = opts.gridLines.tickMarkLength; + + // Width + if (isHorizontal) { + // subtract the margins to line up with the chartArea if we are a full width scale + minSize.width = me.isFullWidth() ? me.maxWidth - me.margins.left - me.margins.right : me.maxWidth; + } else { + minSize.width = display && gridLineOpts.drawTicks ? tickMarkLength : 0; + } + + // height + if (isHorizontal) { + minSize.height = display && gridLineOpts.drawTicks ? tickMarkLength : 0; + } else { + minSize.height = me.maxHeight; // fill all the height + } + + // Are we showing a title for the scale? + if (scaleLabelOpts.display && display) { + var scaleLabelFont = parseFont(scaleLabelOpts); + var scaleLabelPadding = helpers$1.options.toPadding(scaleLabelOpts.padding); + var deltaHeight = scaleLabelFont.lineHeight + scaleLabelPadding.height; + + if (isHorizontal) { + minSize.height += deltaHeight; + } else { + minSize.width += deltaHeight; + } + } + + // Don't bother fitting the ticks if we are not showing the labels + if (tickOpts.display && display) { + var largestTextWidth = helpers$1.longestText(me.ctx, tickFont.string, labels, me.longestTextCache); + var tallestLabelHeightInLines = helpers$1.numberOfLabelLines(labels); + var lineSpace = tickFont.size * 0.5; + var tickPadding = me.options.ticks.padding; + + // Store max number of lines and widest label for _autoSkip + me._maxLabelLines = tallestLabelHeightInLines; + me.longestLabelWidth = largestTextWidth; + + if (isHorizontal) { + var angleRadians = helpers$1.toRadians(me.labelRotation); + var cosRotation = Math.cos(angleRadians); + var sinRotation = Math.sin(angleRadians); + + // TODO - improve this calculation + var labelHeight = (sinRotation * largestTextWidth) + + (tickFont.lineHeight * tallestLabelHeightInLines) + + lineSpace; // padding + + minSize.height = Math.min(me.maxHeight, minSize.height + labelHeight + tickPadding); + + me.ctx.font = tickFont.string; + var firstLabelWidth = computeTextSize(me.ctx, labels[0], tickFont.string); + var lastLabelWidth = computeTextSize(me.ctx, labels[labels.length - 1], tickFont.string); + var offsetLeft = me.getPixelForTick(0) - me.left; + var offsetRight = me.right - me.getPixelForTick(labels.length - 1); + var paddingLeft, paddingRight; + + // Ensure that our ticks are always inside the canvas. When rotated, ticks are right aligned + // which means that the right padding is dominated by the font height + if (me.labelRotation !== 0) { + paddingLeft = position === 'bottom' ? (cosRotation * firstLabelWidth) : (cosRotation * lineSpace); + paddingRight = position === 'bottom' ? (cosRotation * lineSpace) : (cosRotation * lastLabelWidth); + } else { + paddingLeft = firstLabelWidth / 2; + paddingRight = lastLabelWidth / 2; + } + me.paddingLeft = Math.max(paddingLeft - offsetLeft, 0) + 3; // add 3 px to move away from canvas edges + me.paddingRight = Math.max(paddingRight - offsetRight, 0) + 3; + } else { + // A vertical axis is more constrained by the width. Labels are the + // dominant factor here, so get that length first and account for padding + if (tickOpts.mirror) { + largestTextWidth = 0; + } else { + // use lineSpace for consistency with horizontal axis + // tickPadding is not implemented for horizontal + largestTextWidth += tickPadding + lineSpace; + } + + minSize.width = Math.min(me.maxWidth, minSize.width + largestTextWidth); + + me.paddingTop = tickFont.size / 2; + me.paddingBottom = tickFont.size / 2; + } + } + + me.handleMargins(); + + me.width = minSize.width; + me.height = minSize.height; + }, + + /** + * Handle margins and padding interactions + * @private + */ + handleMargins: function() { + var me = this; + if (me.margins) { + me.paddingLeft = Math.max(me.paddingLeft - me.margins.left, 0); + me.paddingTop = Math.max(me.paddingTop - me.margins.top, 0); + me.paddingRight = Math.max(me.paddingRight - me.margins.right, 0); + me.paddingBottom = Math.max(me.paddingBottom - me.margins.bottom, 0); + } + }, + + afterFit: function() { + helpers$1.callback(this.options.afterFit, [this]); + }, + + // Shared Methods + isHorizontal: function() { + return this.options.position === 'top' || this.options.position === 'bottom'; + }, + isFullWidth: function() { + return (this.options.fullWidth); + }, + + // 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 + getRightValue: function(rawValue) { + // Null and undefined values first + if (helpers$1.isNullOrUndef(rawValue)) { + return NaN; + } + // isNaN(object) returns true, so make sure NaN is checking for a number; Discard Infinite values + if ((typeof rawValue === 'number' || rawValue instanceof Number) && !isFinite(rawValue)) { + return NaN; + } + // If it is in fact an object, dive in one more level + if (rawValue) { + if (this.isHorizontal()) { + if (rawValue.x !== undefined) { + return this.getRightValue(rawValue.x); + } + } else if (rawValue.y !== undefined) { + return this.getRightValue(rawValue.y); + } + } + + // Value is good, return it + return rawValue; + }, + + /** + * Used to get the value to display in the tooltip for the data at the given index + * @param index + * @param datasetIndex + */ + getLabelForIndex: helpers$1.noop, + + /** + * Returns the location of the given data point. Value can either be an index or a numerical value + * The coordinate (0, 0) is at the upper-left corner of the canvas + * @param value + * @param index + * @param datasetIndex + */ + getPixelForValue: helpers$1.noop, + + /** + * Used to get the data value from a given pixel. This is the inverse of getPixelForValue + * The coordinate (0, 0) is at the upper-left corner of the canvas + * @param pixel + */ + getValueForPixel: helpers$1.noop, + + /** + * Returns the location of the tick at the given index + * The coordinate (0, 0) is at the upper-left corner of the canvas + */ + getPixelForTick: function(index) { + var me = this; + var offset = me.options.offset; + if (me.isHorizontal()) { + var innerWidth = me.width - (me.paddingLeft + me.paddingRight); + var tickWidth = innerWidth / Math.max((me._ticks.length - (offset ? 0 : 1)), 1); + var pixel = (tickWidth * index) + me.paddingLeft; + + if (offset) { + pixel += tickWidth / 2; + } + + var finalVal = me.left + pixel; + finalVal += me.isFullWidth() ? me.margins.left : 0; + return finalVal; + } + var innerHeight = me.height - (me.paddingTop + me.paddingBottom); + return me.top + (index * (innerHeight / (me._ticks.length - 1))); + }, + + /** + * Utility for getting the pixel location of a percentage of scale + * The coordinate (0, 0) is at the upper-left corner of the canvas + */ + getPixelForDecimal: function(decimal) { + var me = this; + if (me.isHorizontal()) { + var innerWidth = me.width - (me.paddingLeft + me.paddingRight); + var valueOffset = (innerWidth * decimal) + me.paddingLeft; + + var finalVal = me.left + valueOffset; + finalVal += me.isFullWidth() ? me.margins.left : 0; + return finalVal; + } + return me.top + (decimal * me.height); + }, + + /** + * Returns the pixel for the minimum chart value + * The coordinate (0, 0) is at the upper-left corner of the canvas + */ + getBasePixel: function() { + return this.getPixelForValue(this.getBaseValue()); + }, + + getBaseValue: function() { + var me = this; + var min = me.min; + var max = me.max; + + return me.beginAtZero ? 0 : + min < 0 && max < 0 ? max : + min > 0 && max > 0 ? min : + 0; + }, + + /** + * Returns a subset of ticks to be plotted to avoid overlapping labels. + * @private + */ + _autoSkip: function(ticks) { + var me = this; + var isHorizontal = me.isHorizontal(); + var optionTicks = me.options.ticks.minor; + var tickCount = ticks.length; + var skipRatio = false; + var maxTicks = optionTicks.maxTicksLimit; + + // Total space needed to display all ticks. First and last ticks are + // drawn as their center at end of axis, so tickCount-1 + var ticksLength = me._tickSize() * (tickCount - 1); + + // Axis length + var axisLength = isHorizontal + ? me.width - (me.paddingLeft + me.paddingRight) + : me.height - (me.paddingTop + me.PaddingBottom); + + var result = []; + var i, tick; + + if (ticksLength > axisLength) { + skipRatio = 1 + Math.floor(ticksLength / axisLength); + } + + // if they defined a max number of optionTicks, + // increase skipRatio until that number is met + if (tickCount > maxTicks) { + skipRatio = Math.max(skipRatio, 1 + Math.floor(tickCount / maxTicks)); + } + + for (i = 0; i < tickCount; i++) { + tick = ticks[i]; + + if (skipRatio > 1 && i % skipRatio > 0) { + // leave tick in place but make sure it's not displayed (#4635) + delete tick.label; + } + result.push(tick); + } + return result; + }, + + /** + * @private + */ + _tickSize: function() { + var me = this; + var isHorizontal = me.isHorizontal(); + var optionTicks = me.options.ticks.minor; + + // Calculate space needed by label in axis direction. + var rot = helpers$1.toRadians(me.labelRotation); + var cos = Math.abs(Math.cos(rot)); + var sin = Math.abs(Math.sin(rot)); + + var padding = optionTicks.autoSkipPadding || 0; + var w = (me.longestLabelWidth + padding) || 0; + + var tickFont = helpers$1.options._parseFont(optionTicks); + var h = (me._maxLabelLines * tickFont.lineHeight + padding) || 0; + + // Calculate space needed for 1 tick in axis direction. + return isHorizontal + ? h * cos > w * sin ? w / cos : h / sin + : h * sin < w * cos ? h / cos : w / sin; + }, + + /** + * @private + */ + _isVisible: function() { + var me = this; + var chart = me.chart; + var display = me.options.display; + var i, ilen, meta; + + if (display !== 'auto') { + return !!display; + } + + // When 'auto', the scale is visible if at least one associated dataset is visible. + for (i = 0, ilen = chart.data.datasets.length; i < ilen; ++i) { + if (chart.isDatasetVisible(i)) { + meta = chart.getDatasetMeta(i); + if (meta.xAxisID === me.id || meta.yAxisID === me.id) { + return true; + } + } + } + + return false; + }, + + /** + * Actually draw the scale on the canvas + * @param {object} chartArea - the area of the chart to draw full grid lines on + */ + draw: function(chartArea) { + var me = this; + var options = me.options; + + if (!me._isVisible()) { + return; + } + + var chart = me.chart; + var context = me.ctx; + var globalDefaults = core_defaults.global; + var defaultFontColor = globalDefaults.defaultFontColor; + var optionTicks = options.ticks.minor; + var optionMajorTicks = options.ticks.major || optionTicks; + var gridLines = options.gridLines; + var scaleLabel = options.scaleLabel; + var position = options.position; + + var isRotated = me.labelRotation !== 0; + var isMirrored = optionTicks.mirror; + var isHorizontal = me.isHorizontal(); + + var parseFont = helpers$1.options._parseFont; + var ticks = optionTicks.display && optionTicks.autoSkip ? me._autoSkip(me.getTicks()) : me.getTicks(); + var tickFontColor = valueOrDefault$9(optionTicks.fontColor, defaultFontColor); + var tickFont = parseFont(optionTicks); + var lineHeight = tickFont.lineHeight; + var majorTickFontColor = valueOrDefault$9(optionMajorTicks.fontColor, defaultFontColor); + var majorTickFont = parseFont(optionMajorTicks); + var tickPadding = optionTicks.padding; + var labelOffset = optionTicks.labelOffset; + + var tl = gridLines.drawTicks ? gridLines.tickMarkLength : 0; + + var scaleLabelFontColor = valueOrDefault$9(scaleLabel.fontColor, defaultFontColor); + var scaleLabelFont = parseFont(scaleLabel); + var scaleLabelPadding = helpers$1.options.toPadding(scaleLabel.padding); + var labelRotationRadians = helpers$1.toRadians(me.labelRotation); + + var itemsToDraw = []; + + var axisWidth = gridLines.drawBorder ? valueAtIndexOrDefault(gridLines.lineWidth, 0, 0) : 0; + var alignPixel = helpers$1._alignPixel; + var borderValue, tickStart, tickEnd; + + if (position === 'top') { + borderValue = alignPixel(chart, me.bottom, axisWidth); + tickStart = me.bottom - tl; + tickEnd = borderValue - axisWidth / 2; + } else if (position === 'bottom') { + borderValue = alignPixel(chart, me.top, axisWidth); + tickStart = borderValue + axisWidth / 2; + tickEnd = me.top + tl; + } else if (position === 'left') { + borderValue = alignPixel(chart, me.right, axisWidth); + tickStart = me.right - tl; + tickEnd = borderValue - axisWidth / 2; + } else { + borderValue = alignPixel(chart, me.left, axisWidth); + tickStart = borderValue + axisWidth / 2; + tickEnd = me.left + tl; + } + + var epsilon = 0.0000001; // 0.0000001 is margin in pixels for Accumulated error. + + helpers$1.each(ticks, function(tick, index) { + // autoskipper skipped this tick (#4635) + if (helpers$1.isNullOrUndef(tick.label)) { + return; + } + + var label = tick.label; + var lineWidth, lineColor, borderDash, borderDashOffset; + if (index === me.zeroLineIndex && options.offset === gridLines.offsetGridLines) { + // Draw the first index specially + lineWidth = gridLines.zeroLineWidth; + lineColor = gridLines.zeroLineColor; + borderDash = gridLines.zeroLineBorderDash || []; + borderDashOffset = gridLines.zeroLineBorderDashOffset || 0.0; + } else { + lineWidth = valueAtIndexOrDefault(gridLines.lineWidth, index); + lineColor = valueAtIndexOrDefault(gridLines.color, index); + borderDash = gridLines.borderDash || []; + borderDashOffset = gridLines.borderDashOffset || 0.0; + } + + // Common properties + var tx1, ty1, tx2, ty2, x1, y1, x2, y2, labelX, labelY, textOffset, textAlign; + var labelCount = helpers$1.isArray(label) ? label.length : 1; + var lineValue = getPixelForGridLine(me, index, gridLines.offsetGridLines); + + if (isHorizontal) { + var labelYOffset = tl + tickPadding; + + if (lineValue < me.left - epsilon) { + lineColor = 'rgba(0,0,0,0)'; + } + + tx1 = tx2 = x1 = x2 = alignPixel(chart, lineValue, lineWidth); + ty1 = tickStart; + ty2 = tickEnd; + labelX = me.getPixelForTick(index) + labelOffset; // x values for optionTicks (need to consider offsetLabel option) + + if (position === 'top') { + y1 = alignPixel(chart, chartArea.top, axisWidth) + axisWidth / 2; + y2 = chartArea.bottom; + textOffset = ((!isRotated ? 0.5 : 1) - labelCount) * lineHeight; + textAlign = !isRotated ? 'center' : 'left'; + labelY = me.bottom - labelYOffset; + } else { + y1 = chartArea.top; + y2 = alignPixel(chart, chartArea.bottom, axisWidth) - axisWidth / 2; + textOffset = (!isRotated ? 0.5 : 0) * lineHeight; + textAlign = !isRotated ? 'center' : 'right'; + labelY = me.top + labelYOffset; + } + } else { + var labelXOffset = (isMirrored ? 0 : tl) + tickPadding; + + if (lineValue < me.top - epsilon) { + lineColor = 'rgba(0,0,0,0)'; + } + + tx1 = tickStart; + tx2 = tickEnd; + ty1 = ty2 = y1 = y2 = alignPixel(chart, lineValue, lineWidth); + labelY = me.getPixelForTick(index) + labelOffset; + textOffset = (1 - labelCount) * lineHeight / 2; + + if (position === 'left') { + x1 = alignPixel(chart, chartArea.left, axisWidth) + axisWidth / 2; + x2 = chartArea.right; + textAlign = isMirrored ? 'left' : 'right'; + labelX = me.right - labelXOffset; + } else { + x1 = chartArea.left; + x2 = alignPixel(chart, chartArea.right, axisWidth) - axisWidth / 2; + textAlign = isMirrored ? 'right' : 'left'; + labelX = me.left + labelXOffset; + } + } + + itemsToDraw.push({ + tx1: tx1, + ty1: ty1, + tx2: tx2, + ty2: ty2, + x1: x1, + y1: y1, + x2: x2, + y2: y2, + labelX: labelX, + labelY: labelY, + glWidth: lineWidth, + glColor: lineColor, + glBorderDash: borderDash, + glBorderDashOffset: borderDashOffset, + rotation: -1 * labelRotationRadians, + label: label, + major: tick.major, + textOffset: textOffset, + textAlign: textAlign + }); + }); + + // Draw all of the tick labels, tick marks, and grid lines at the correct places + helpers$1.each(itemsToDraw, function(itemToDraw) { + var glWidth = itemToDraw.glWidth; + var glColor = itemToDraw.glColor; + + if (gridLines.display && glWidth && glColor) { + context.save(); + context.lineWidth = glWidth; + context.strokeStyle = glColor; + if (context.setLineDash) { + context.setLineDash(itemToDraw.glBorderDash); + context.lineDashOffset = itemToDraw.glBorderDashOffset; + } + + context.beginPath(); + + if (gridLines.drawTicks) { + context.moveTo(itemToDraw.tx1, itemToDraw.ty1); + context.lineTo(itemToDraw.tx2, itemToDraw.ty2); + } + + if (gridLines.drawOnChartArea) { + context.moveTo(itemToDraw.x1, itemToDraw.y1); + context.lineTo(itemToDraw.x2, itemToDraw.y2); + } + + context.stroke(); + context.restore(); + } + + if (optionTicks.display) { + // Make sure we draw text in the correct color and font + context.save(); + context.translate(itemToDraw.labelX, itemToDraw.labelY); + context.rotate(itemToDraw.rotation); + context.font = itemToDraw.major ? majorTickFont.string : tickFont.string; + context.fillStyle = itemToDraw.major ? majorTickFontColor : tickFontColor; + context.textBaseline = 'middle'; + context.textAlign = itemToDraw.textAlign; + + var label = itemToDraw.label; + var y = itemToDraw.textOffset; + if (helpers$1.isArray(label)) { + for (var i = 0; i < label.length; ++i) { + // We just make sure the multiline element is a string here.. + context.fillText('' + label[i], 0, y); + y += lineHeight; + } + } else { + context.fillText(label, 0, y); + } + context.restore(); + } + }); + + if (scaleLabel.display) { + // Draw the scale label + var scaleLabelX; + var scaleLabelY; + var rotation = 0; + var halfLineHeight = scaleLabelFont.lineHeight / 2; + + if (isHorizontal) { + scaleLabelX = me.left + ((me.right - me.left) / 2); // midpoint of the width + scaleLabelY = position === 'bottom' + ? me.bottom - halfLineHeight - scaleLabelPadding.bottom + : me.top + halfLineHeight + scaleLabelPadding.top; + } else { + var isLeft = position === 'left'; + scaleLabelX = isLeft + ? me.left + halfLineHeight + scaleLabelPadding.top + : me.right - halfLineHeight - scaleLabelPadding.top; + scaleLabelY = me.top + ((me.bottom - me.top) / 2); + rotation = isLeft ? -0.5 * Math.PI : 0.5 * Math.PI; + } + + context.save(); + context.translate(scaleLabelX, scaleLabelY); + context.rotate(rotation); + context.textAlign = 'center'; + context.textBaseline = 'middle'; + context.fillStyle = scaleLabelFontColor; // render in correct colour + context.font = scaleLabelFont.string; + context.fillText(scaleLabel.labelString, 0, 0); + context.restore(); + } + + if (axisWidth) { + // Draw the line at the edge of the axis + var firstLineWidth = axisWidth; + var lastLineWidth = valueAtIndexOrDefault(gridLines.lineWidth, ticks.length - 1, 0); + var x1, x2, y1, y2; + + if (isHorizontal) { + x1 = alignPixel(chart, me.left, firstLineWidth) - firstLineWidth / 2; + x2 = alignPixel(chart, me.right, lastLineWidth) + lastLineWidth / 2; + y1 = y2 = borderValue; + } else { + y1 = alignPixel(chart, me.top, firstLineWidth) - firstLineWidth / 2; + y2 = alignPixel(chart, me.bottom, lastLineWidth) + lastLineWidth / 2; + x1 = x2 = borderValue; + } + + context.lineWidth = axisWidth; + context.strokeStyle = valueAtIndexOrDefault(gridLines.color, 0); + context.beginPath(); + context.moveTo(x1, y1); + context.lineTo(x2, y2); + context.stroke(); + } + } +}); + +var defaultConfig = { + position: 'bottom' +}; + +var scale_category = core_scale.extend({ + /** + * Internal function to get the correct labels. If data.xLabels or data.yLabels are defined, use those + * else fall back to data.labels + * @private + */ + getLabels: function() { + var data = this.chart.data; + return this.options.labels || (this.isHorizontal() ? data.xLabels : data.yLabels) || data.labels; + }, + + determineDataLimits: function() { + var me = this; + var labels = me.getLabels(); + me.minIndex = 0; + me.maxIndex = labels.length - 1; + var findIndex; + + if (me.options.ticks.min !== undefined) { + // user specified min value + findIndex = labels.indexOf(me.options.ticks.min); + me.minIndex = findIndex !== -1 ? findIndex : me.minIndex; + } + + if (me.options.ticks.max !== undefined) { + // user specified max value + findIndex = labels.indexOf(me.options.ticks.max); + me.maxIndex = findIndex !== -1 ? findIndex : me.maxIndex; + } + + me.min = labels[me.minIndex]; + me.max = labels[me.maxIndex]; + }, + + buildTicks: function() { + var me = this; + var labels = me.getLabels(); + // If we are viewing some subset of labels, slice the original array + me.ticks = (me.minIndex === 0 && me.maxIndex === labels.length - 1) ? labels : labels.slice(me.minIndex, me.maxIndex + 1); + }, + + getLabelForIndex: function(index, datasetIndex) { + var me = this; + var chart = me.chart; + + if (chart.getDatasetMeta(datasetIndex).controller._getValueScaleId() === me.id) { + return me.getRightValue(chart.data.datasets[datasetIndex].data[index]); + } + + return me.ticks[index - me.minIndex]; + }, + + // Used to get data value locations. Value can either be an index or a numerical value + getPixelForValue: function(value, index) { + var me = this; + var offset = me.options.offset; + // 1 is added because we need the length but we have the indexes + var offsetAmt = Math.max((me.maxIndex + 1 - me.minIndex - (offset ? 0 : 1)), 1); + + // If value is a data object, then index is the index in the data array, + // not the index of the scale. We need to change that. + var valueCategory; + if (value !== undefined && value !== null) { + valueCategory = me.isHorizontal() ? value.x : value.y; + } + if (valueCategory !== undefined || (value !== undefined && isNaN(index))) { + var labels = me.getLabels(); + value = valueCategory || value; + var idx = labels.indexOf(value); + index = idx !== -1 ? idx : index; + } + + if (me.isHorizontal()) { + var valueWidth = me.width / offsetAmt; + var widthOffset = (valueWidth * (index - me.minIndex)); + + if (offset) { + widthOffset += (valueWidth / 2); + } + + return me.left + widthOffset; + } + var valueHeight = me.height / offsetAmt; + var heightOffset = (valueHeight * (index - me.minIndex)); + + if (offset) { + heightOffset += (valueHeight / 2); + } + + return me.top + heightOffset; + }, + + getPixelForTick: function(index) { + return this.getPixelForValue(this.ticks[index], index + this.minIndex, null); + }, + + getValueForPixel: function(pixel) { + var me = this; + var offset = me.options.offset; + var value; + var offsetAmt = Math.max((me._ticks.length - (offset ? 0 : 1)), 1); + var horz = me.isHorizontal(); + var valueDimension = (horz ? me.width : me.height) / offsetAmt; + + pixel -= horz ? me.left : me.top; + + if (offset) { + pixel -= (valueDimension / 2); + } + + if (pixel <= 0) { + value = 0; + } else { + value = Math.round(pixel / valueDimension); + } + + return value + me.minIndex; + }, + + getBasePixel: function() { + return this.bottom; + } +}); + +// INTERNAL: static default options, registered in src/index.js +var _defaults = defaultConfig; +scale_category._defaults = _defaults; + +var noop = helpers$1.noop; +var isNullOrUndef = helpers$1.isNullOrUndef; + +/** + * Generate a set of linear ticks + * @param generationOptions the options used to generate the ticks + * @param dataRange the range of the data + * @returns {number[]} array of tick values + */ +function generateTicks(generationOptions, dataRange) { + var ticks = []; + // To get a "nice" value for the tick spacing, we will use the appropriately named + // "nice number" algorithm. See https://stackoverflow.com/questions/8506881/nice-label-algorithm-for-charts-with-minimum-ticks + // for details. + + var MIN_SPACING = 1e-14; + var stepSize = generationOptions.stepSize; + var unit = stepSize || 1; + var maxNumSpaces = generationOptions.maxTicks - 1; + var min = generationOptions.min; + var max = generationOptions.max; + var precision = generationOptions.precision; + var rmin = dataRange.min; + var rmax = dataRange.max; + var spacing = helpers$1.niceNum((rmax - rmin) / maxNumSpaces / unit) * unit; + var factor, niceMin, niceMax, numSpaces; + + // Beyond MIN_SPACING floating point numbers being to lose precision + // such that we can't do the math necessary to generate ticks + if (spacing < MIN_SPACING && isNullOrUndef(min) && isNullOrUndef(max)) { + return [rmin, rmax]; + } + + numSpaces = Math.ceil(rmax / spacing) - Math.floor(rmin / spacing); + if (numSpaces > maxNumSpaces) { + // If the calculated num of spaces exceeds maxNumSpaces, recalculate it + spacing = helpers$1.niceNum(numSpaces * spacing / maxNumSpaces / unit) * unit; + } + + if (stepSize || isNullOrUndef(precision)) { + // If a precision is not specified, calculate factor based on spacing + factor = Math.pow(10, helpers$1._decimalPlaces(spacing)); + } else { + // If the user specified a precision, round to that number of decimal places + factor = Math.pow(10, precision); + spacing = Math.ceil(spacing * factor) / factor; + } + + niceMin = Math.floor(rmin / spacing) * spacing; + niceMax = Math.ceil(rmax / spacing) * spacing; + + // If min, max and stepSize is set and they make an evenly spaced scale use it. + if (stepSize) { + // If very close to our whole number, use it. + if (!isNullOrUndef(min) && helpers$1.almostWhole(min / spacing, spacing / 1000)) { + niceMin = min; + } + if (!isNullOrUndef(max) && helpers$1.almostWhole(max / spacing, spacing / 1000)) { + niceMax = max; + } + } + + numSpaces = (niceMax - niceMin) / spacing; + // If very close to our rounded value, use it. + if (helpers$1.almostEquals(numSpaces, Math.round(numSpaces), spacing / 1000)) { + numSpaces = Math.round(numSpaces); + } else { + numSpaces = Math.ceil(numSpaces); + } + + niceMin = Math.round(niceMin * factor) / factor; + niceMax = Math.round(niceMax * factor) / factor; + ticks.push(isNullOrUndef(min) ? niceMin : min); + for (var j = 1; j < numSpaces; ++j) { + ticks.push(Math.round((niceMin + j * spacing) * factor) / factor); + } + ticks.push(isNullOrUndef(max) ? niceMax : max); + + return ticks; +} + +var scale_linearbase = core_scale.extend({ + getRightValue: function(value) { + if (typeof value === 'string') { + return +value; + } + return core_scale.prototype.getRightValue.call(this, value); + }, + + handleTickRangeOptions: function() { + var me = this; + var opts = me.options; + var tickOpts = opts.ticks; + + // If we are forcing it to begin at 0, but 0 will already be rendered on the chart, + // do nothing since that would make the chart weird. If the user really wants a weird chart + // axis, they can manually override it + if (tickOpts.beginAtZero) { + var minSign = helpers$1.sign(me.min); + var maxSign = helpers$1.sign(me.max); + + if (minSign < 0 && maxSign < 0) { + // move the top up to 0 + me.max = 0; + } else if (minSign > 0 && maxSign > 0) { + // move the bottom down to 0 + me.min = 0; + } + } + + var setMin = tickOpts.min !== undefined || tickOpts.suggestedMin !== undefined; + var setMax = tickOpts.max !== undefined || tickOpts.suggestedMax !== undefined; + + if (tickOpts.min !== undefined) { + me.min = tickOpts.min; + } else if (tickOpts.suggestedMin !== undefined) { + if (me.min === null) { + me.min = tickOpts.suggestedMin; + } else { + me.min = Math.min(me.min, tickOpts.suggestedMin); + } + } + + if (tickOpts.max !== undefined) { + me.max = tickOpts.max; + } else if (tickOpts.suggestedMax !== undefined) { + if (me.max === null) { + me.max = tickOpts.suggestedMax; + } else { + me.max = Math.max(me.max, tickOpts.suggestedMax); + } + } + + if (setMin !== setMax) { + // We set the min or the max but not both. + // So ensure that our range is good + // Inverted or 0 length range can happen when + // ticks.min is set, and no datasets are visible + if (me.min >= me.max) { + if (setMin) { + me.max = me.min + 1; + } else { + me.min = me.max - 1; + } + } + } + + if (me.min === me.max) { + me.max++; + + if (!tickOpts.beginAtZero) { + me.min--; + } + } + }, + + getTickLimit: function() { + var me = this; + var tickOpts = me.options.ticks; + var stepSize = tickOpts.stepSize; + var maxTicksLimit = tickOpts.maxTicksLimit; + var maxTicks; + + if (stepSize) { + maxTicks = Math.ceil(me.max / stepSize) - Math.floor(me.min / stepSize) + 1; + } else { + maxTicks = me._computeTickLimit(); + maxTicksLimit = maxTicksLimit || 11; + } + + if (maxTicksLimit) { + maxTicks = Math.min(maxTicksLimit, maxTicks); + } + + return maxTicks; + }, + + _computeTickLimit: function() { + return Number.POSITIVE_INFINITY; + }, + + handleDirectionalChanges: noop, + + buildTicks: function() { + var me = this; + var opts = me.options; + var tickOpts = opts.ticks; + + // Figure out what the max number of ticks we can support it is based on the size of + // the axis area. For now, we say that the minimum tick spacing in pixels must be 40 + // We also limit the maximum number of ticks to 11 which gives a nice 10 squares on + // the graph. Make sure we always have at least 2 ticks + var maxTicks = me.getTickLimit(); + maxTicks = Math.max(2, maxTicks); + + var numericGeneratorOptions = { + maxTicks: maxTicks, + min: tickOpts.min, + max: tickOpts.max, + precision: tickOpts.precision, + stepSize: helpers$1.valueOrDefault(tickOpts.fixedStepSize, tickOpts.stepSize) + }; + var ticks = me.ticks = generateTicks(numericGeneratorOptions, me); + + me.handleDirectionalChanges(); + + // At this point, we need to update our max and min given the tick values since we have expanded the + // range of the scale + me.max = helpers$1.max(ticks); + me.min = helpers$1.min(ticks); + + if (tickOpts.reverse) { + ticks.reverse(); + + me.start = me.max; + me.end = me.min; + } else { + me.start = me.min; + me.end = me.max; + } + }, + + convertTicksToLabels: function() { + var me = this; + me.ticksAsNumbers = me.ticks.slice(); + me.zeroLineIndex = me.ticks.indexOf(0); + + core_scale.prototype.convertTicksToLabels.call(me); + } +}); + +var defaultConfig$1 = { + position: 'left', + ticks: { + callback: core_ticks.formatters.linear + } +}; + +var scale_linear = scale_linearbase.extend({ + determineDataLimits: function() { + var me = this; + var opts = me.options; + var chart = me.chart; + var data = chart.data; + var datasets = data.datasets; + var isHorizontal = me.isHorizontal(); + var DEFAULT_MIN = 0; + var DEFAULT_MAX = 1; + + function IDMatches(meta) { + return isHorizontal ? meta.xAxisID === me.id : meta.yAxisID === me.id; + } + + // First Calculate the range + me.min = null; + me.max = null; + + var hasStacks = opts.stacked; + if (hasStacks === undefined) { + helpers$1.each(datasets, function(dataset, datasetIndex) { + if (hasStacks) { + return; + } + + var meta = chart.getDatasetMeta(datasetIndex); + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta) && + meta.stack !== undefined) { + hasStacks = true; + } + }); + } + + if (opts.stacked || hasStacks) { + var valuesPerStack = {}; + + helpers$1.each(datasets, function(dataset, datasetIndex) { + var meta = chart.getDatasetMeta(datasetIndex); + var key = [ + meta.type, + // we have a separate stack for stack=undefined datasets when the opts.stacked is undefined + ((opts.stacked === undefined && meta.stack === undefined) ? datasetIndex : ''), + meta.stack + ].join('.'); + + if (valuesPerStack[key] === undefined) { + valuesPerStack[key] = { + positiveValues: [], + negativeValues: [] + }; + } + + // Store these per type + var positiveValues = valuesPerStack[key].positiveValues; + var negativeValues = valuesPerStack[key].negativeValues; + + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) { + helpers$1.each(dataset.data, function(rawValue, index) { + var value = +me.getRightValue(rawValue); + if (isNaN(value) || meta.data[index].hidden) { + return; + } + + positiveValues[index] = positiveValues[index] || 0; + negativeValues[index] = negativeValues[index] || 0; + + if (opts.relativePoints) { + positiveValues[index] = 100; + } else if (value < 0) { + negativeValues[index] += value; + } else { + positiveValues[index] += value; + } + }); + } + }); + + helpers$1.each(valuesPerStack, function(valuesForType) { + var values = valuesForType.positiveValues.concat(valuesForType.negativeValues); + var minVal = helpers$1.min(values); + var maxVal = helpers$1.max(values); + me.min = me.min === null ? minVal : Math.min(me.min, minVal); + me.max = me.max === null ? maxVal : Math.max(me.max, maxVal); + }); + + } else { + helpers$1.each(datasets, function(dataset, datasetIndex) { + var meta = chart.getDatasetMeta(datasetIndex); + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) { + helpers$1.each(dataset.data, function(rawValue, index) { + var value = +me.getRightValue(rawValue); + if (isNaN(value) || meta.data[index].hidden) { + return; + } + + if (me.min === null) { + me.min = value; + } else if (value < me.min) { + me.min = value; + } + + if (me.max === null) { + me.max = value; + } else if (value > me.max) { + me.max = value; + } + }); + } + }); + } + + me.min = isFinite(me.min) && !isNaN(me.min) ? me.min : DEFAULT_MIN; + me.max = isFinite(me.max) && !isNaN(me.max) ? me.max : DEFAULT_MAX; + + // Common base implementation to handle ticks.min, ticks.max, ticks.beginAtZero + this.handleTickRangeOptions(); + }, + + // Returns the maximum number of ticks based on the scale dimension + _computeTickLimit: function() { + var me = this; + var tickFont; + + if (me.isHorizontal()) { + return Math.ceil(me.width / 40); + } + tickFont = helpers$1.options._parseFont(me.options.ticks); + return Math.ceil(me.height / tickFont.lineHeight); + }, + + // Called after the ticks are built. We need + handleDirectionalChanges: function() { + if (!this.isHorizontal()) { + // We are in a vertical orientation. The top value is the highest. So reverse the array + this.ticks.reverse(); + } + }, + + getLabelForIndex: function(index, datasetIndex) { + return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]); + }, + + // Utils + getPixelForValue: function(value) { + // This must be called after fit has been run so that + // this.left, this.top, this.right, and this.bottom have been defined + var me = this; + var start = me.start; + + var rightValue = +me.getRightValue(value); + var pixel; + var range = me.end - start; + + if (me.isHorizontal()) { + pixel = me.left + (me.width / range * (rightValue - start)); + } else { + pixel = me.bottom - (me.height / range * (rightValue - start)); + } + return pixel; + }, + + getValueForPixel: function(pixel) { + var me = this; + var isHorizontal = me.isHorizontal(); + var innerDimension = isHorizontal ? me.width : me.height; + var offset = (isHorizontal ? pixel - me.left : me.bottom - pixel) / innerDimension; + return me.start + ((me.end - me.start) * offset); + }, + + getPixelForTick: function(index) { + return this.getPixelForValue(this.ticksAsNumbers[index]); + } +}); + +// INTERNAL: static default options, registered in src/index.js +var _defaults$1 = defaultConfig$1; +scale_linear._defaults = _defaults$1; + +var valueOrDefault$a = helpers$1.valueOrDefault; + +/** + * Generate a set of logarithmic ticks + * @param generationOptions the options used to generate the ticks + * @param dataRange the range of the data + * @returns {number[]} array of tick values + */ +function generateTicks$1(generationOptions, dataRange) { + var ticks = []; + + var tickVal = valueOrDefault$a(generationOptions.min, Math.pow(10, Math.floor(helpers$1.log10(dataRange.min)))); + + var endExp = Math.floor(helpers$1.log10(dataRange.max)); + var endSignificand = Math.ceil(dataRange.max / Math.pow(10, endExp)); + var exp, significand; + + if (tickVal === 0) { + exp = Math.floor(helpers$1.log10(dataRange.minNotZero)); + significand = Math.floor(dataRange.minNotZero / Math.pow(10, exp)); + + ticks.push(tickVal); + tickVal = significand * Math.pow(10, exp); + } else { + exp = Math.floor(helpers$1.log10(tickVal)); + significand = Math.floor(tickVal / Math.pow(10, exp)); + } + var precision = exp < 0 ? Math.pow(10, Math.abs(exp)) : 1; + + do { + ticks.push(tickVal); + + ++significand; + if (significand === 10) { + significand = 1; + ++exp; + precision = exp >= 0 ? 1 : precision; + } + + tickVal = Math.round(significand * Math.pow(10, exp) * precision) / precision; + } while (exp < endExp || (exp === endExp && significand < endSignificand)); + + var lastTick = valueOrDefault$a(generationOptions.max, tickVal); + ticks.push(lastTick); + + return ticks; +} + +var defaultConfig$2 = { + position: 'left', + + // label settings + ticks: { + callback: core_ticks.formatters.logarithmic + } +}; + +// TODO(v3): change this to positiveOrDefault +function nonNegativeOrDefault(value, defaultValue) { + return helpers$1.isFinite(value) && value >= 0 ? value : defaultValue; +} + +var scale_logarithmic = core_scale.extend({ + determineDataLimits: function() { + var me = this; + var opts = me.options; + var chart = me.chart; + var data = chart.data; + var datasets = data.datasets; + var isHorizontal = me.isHorizontal(); + function IDMatches(meta) { + return isHorizontal ? meta.xAxisID === me.id : meta.yAxisID === me.id; + } + + // Calculate Range + me.min = null; + me.max = null; + me.minNotZero = null; + + var hasStacks = opts.stacked; + if (hasStacks === undefined) { + helpers$1.each(datasets, function(dataset, datasetIndex) { + if (hasStacks) { + return; + } + + var meta = chart.getDatasetMeta(datasetIndex); + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta) && + meta.stack !== undefined) { + hasStacks = true; + } + }); + } + + if (opts.stacked || hasStacks) { + var valuesPerStack = {}; + + helpers$1.each(datasets, function(dataset, datasetIndex) { + var meta = chart.getDatasetMeta(datasetIndex); + var key = [ + meta.type, + // we have a separate stack for stack=undefined datasets when the opts.stacked is undefined + ((opts.stacked === undefined && meta.stack === undefined) ? datasetIndex : ''), + meta.stack + ].join('.'); + + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) { + if (valuesPerStack[key] === undefined) { + valuesPerStack[key] = []; + } + + helpers$1.each(dataset.data, function(rawValue, index) { + var values = valuesPerStack[key]; + var value = +me.getRightValue(rawValue); + // invalid, hidden and negative values are ignored + if (isNaN(value) || meta.data[index].hidden || value < 0) { + return; + } + values[index] = values[index] || 0; + values[index] += value; + }); + } + }); + + helpers$1.each(valuesPerStack, function(valuesForType) { + if (valuesForType.length > 0) { + var minVal = helpers$1.min(valuesForType); + var maxVal = helpers$1.max(valuesForType); + me.min = me.min === null ? minVal : Math.min(me.min, minVal); + me.max = me.max === null ? maxVal : Math.max(me.max, maxVal); + } + }); + + } else { + helpers$1.each(datasets, function(dataset, datasetIndex) { + var meta = chart.getDatasetMeta(datasetIndex); + if (chart.isDatasetVisible(datasetIndex) && IDMatches(meta)) { + helpers$1.each(dataset.data, function(rawValue, index) { + var value = +me.getRightValue(rawValue); + // invalid, hidden and negative values are ignored + if (isNaN(value) || meta.data[index].hidden || value < 0) { + return; + } + + if (me.min === null) { + me.min = value; + } else if (value < me.min) { + me.min = value; + } + + if (me.max === null) { + me.max = value; + } else if (value > me.max) { + me.max = value; + } + + if (value !== 0 && (me.minNotZero === null || value < me.minNotZero)) { + me.minNotZero = value; + } + }); + } + }); + } + + // Common base implementation to handle ticks.min, ticks.max + this.handleTickRangeOptions(); + }, + + handleTickRangeOptions: function() { + var me = this; + var tickOpts = me.options.ticks; + var DEFAULT_MIN = 1; + var DEFAULT_MAX = 10; + + me.min = nonNegativeOrDefault(tickOpts.min, me.min); + me.max = nonNegativeOrDefault(tickOpts.max, me.max); + + if (me.min === me.max) { + if (me.min !== 0 && me.min !== null) { + me.min = Math.pow(10, Math.floor(helpers$1.log10(me.min)) - 1); + me.max = Math.pow(10, Math.floor(helpers$1.log10(me.max)) + 1); + } else { + me.min = DEFAULT_MIN; + me.max = DEFAULT_MAX; + } + } + if (me.min === null) { + me.min = Math.pow(10, Math.floor(helpers$1.log10(me.max)) - 1); + } + if (me.max === null) { + me.max = me.min !== 0 + ? Math.pow(10, Math.floor(helpers$1.log10(me.min)) + 1) + : DEFAULT_MAX; + } + if (me.minNotZero === null) { + if (me.min > 0) { + me.minNotZero = me.min; + } else if (me.max < 1) { + me.minNotZero = Math.pow(10, Math.floor(helpers$1.log10(me.max))); + } else { + me.minNotZero = DEFAULT_MIN; + } + } + }, + + buildTicks: function() { + var me = this; + var tickOpts = me.options.ticks; + var reverse = !me.isHorizontal(); + + var generationOptions = { + min: nonNegativeOrDefault(tickOpts.min), + max: nonNegativeOrDefault(tickOpts.max) + }; + var ticks = me.ticks = generateTicks$1(generationOptions, me); + + // At this point, we need to update our max and min given the tick values since we have expanded the + // range of the scale + me.max = helpers$1.max(ticks); + me.min = helpers$1.min(ticks); + + if (tickOpts.reverse) { + reverse = !reverse; + me.start = me.max; + me.end = me.min; + } else { + me.start = me.min; + me.end = me.max; + } + if (reverse) { + ticks.reverse(); + } + }, + + convertTicksToLabels: function() { + this.tickValues = this.ticks.slice(); + + core_scale.prototype.convertTicksToLabels.call(this); + }, + + // Get the correct tooltip label + getLabelForIndex: function(index, datasetIndex) { + return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]); + }, + + getPixelForTick: function(index) { + return this.getPixelForValue(this.tickValues[index]); + }, + + /** + * Returns the value of the first tick. + * @param {number} value - The minimum not zero value. + * @return {number} The first tick value. + * @private + */ + _getFirstTickValue: function(value) { + var exp = Math.floor(helpers$1.log10(value)); + var significand = Math.floor(value / Math.pow(10, exp)); + + return significand * Math.pow(10, exp); + }, + + getPixelForValue: function(value) { + var me = this; + var tickOpts = me.options.ticks; + var reverse = tickOpts.reverse; + var log10 = helpers$1.log10; + var firstTickValue = me._getFirstTickValue(me.minNotZero); + var offset = 0; + var innerDimension, pixel, start, end, sign; + + value = +me.getRightValue(value); + if (reverse) { + start = me.end; + end = me.start; + sign = -1; + } else { + start = me.start; + end = me.end; + sign = 1; + } + if (me.isHorizontal()) { + innerDimension = me.width; + pixel = reverse ? me.right : me.left; + } else { + innerDimension = me.height; + sign *= -1; // invert, since the upper-left corner of the canvas is at pixel (0, 0) + pixel = reverse ? me.top : me.bottom; + } + if (value !== start) { + if (start === 0) { // include zero tick + offset = valueOrDefault$a(tickOpts.fontSize, core_defaults.global.defaultFontSize); + innerDimension -= offset; + start = firstTickValue; + } + if (value !== 0) { + offset += innerDimension / (log10(end) - log10(start)) * (log10(value) - log10(start)); + } + pixel += sign * offset; + } + return pixel; + }, + + getValueForPixel: function(pixel) { + var me = this; + var tickOpts = me.options.ticks; + var reverse = tickOpts.reverse; + var log10 = helpers$1.log10; + var firstTickValue = me._getFirstTickValue(me.minNotZero); + var innerDimension, start, end, value; + + if (reverse) { + start = me.end; + end = me.start; + } else { + start = me.start; + end = me.end; + } + if (me.isHorizontal()) { + innerDimension = me.width; + value = reverse ? me.right - pixel : pixel - me.left; + } else { + innerDimension = me.height; + value = reverse ? pixel - me.top : me.bottom - pixel; + } + if (value !== start) { + if (start === 0) { // include zero tick + var offset = valueOrDefault$a(tickOpts.fontSize, core_defaults.global.defaultFontSize); + value -= offset; + innerDimension -= offset; + start = firstTickValue; + } + value *= log10(end) - log10(start); + value /= innerDimension; + value = Math.pow(10, log10(start) + value); + } + return value; + } +}); + +// INTERNAL: static default options, registered in src/index.js +var _defaults$2 = defaultConfig$2; +scale_logarithmic._defaults = _defaults$2; + +var valueOrDefault$b = helpers$1.valueOrDefault; +var valueAtIndexOrDefault$1 = helpers$1.valueAtIndexOrDefault; +var resolve$7 = helpers$1.options.resolve; + +var defaultConfig$3 = { + display: true, + + // Boolean - Whether to animate scaling the chart from the centre + animate: true, + position: 'chartArea', + + angleLines: { + display: true, + color: 'rgba(0, 0, 0, 0.1)', + lineWidth: 1, + borderDash: [], + borderDashOffset: 0.0 + }, + + gridLines: { + circular: false + }, + + // label settings + ticks: { + // Boolean - Show a backdrop to the scale label + showLabelBackdrop: true, + + // String - The colour of the label backdrop + backdropColor: 'rgba(255,255,255,0.75)', + + // Number - The backdrop padding above & below the label in pixels + backdropPaddingY: 2, + + // Number - The backdrop padding to the side of the label in pixels + backdropPaddingX: 2, + + callback: core_ticks.formatters.linear + }, + + pointLabels: { + // Boolean - if true, show point labels + display: true, + + // Number - Point label font size in pixels + fontSize: 10, + + // Function - Used to convert point labels + callback: function(label) { + return label; + } + } +}; + +function getValueCount(scale) { + var opts = scale.options; + return opts.angleLines.display || opts.pointLabels.display ? scale.chart.data.labels.length : 0; +} + +function getTickBackdropHeight(opts) { + var tickOpts = opts.ticks; + + if (tickOpts.display && opts.display) { + return valueOrDefault$b(tickOpts.fontSize, core_defaults.global.defaultFontSize) + tickOpts.backdropPaddingY * 2; + } + return 0; +} + +function measureLabelSize(ctx, lineHeight, label) { + if (helpers$1.isArray(label)) { + return { + w: helpers$1.longestText(ctx, ctx.font, label), + h: label.length * lineHeight + }; + } + + return { + w: ctx.measureText(label).width, + h: lineHeight + }; +} + +function determineLimits(angle, pos, size, min, max) { + if (angle === min || angle === max) { + return { + start: pos - (size / 2), + end: pos + (size / 2) + }; + } else if (angle < min || angle > max) { + return { + start: pos - size, + end: pos + }; + } + + return { + start: pos, + end: pos + size + }; +} + +/** + * Helper function to fit a radial linear scale with point labels + */ +function fitWithPointLabels(scale) { + + // Right, this is really confusing and there is a lot of maths going on here + // The gist of the problem is here: https://gist.github.com/nnnick/696cc9c55f4b0beb8fe9 + // + // Reaction: https://dl.dropboxusercontent.com/u/34601363/toomuchscience.gif + // + // Solution: + // + // We assume the radius of the polygon is half the size of the canvas at first + // at each index we check if the text overlaps. + // + // Where it does, we store that angle and that index. + // + // After finding the largest index and angle we calculate how much we need to remove + // from the shape radius to move the point inwards by that x. + // + // We average the left and right distances to get the maximum shape radius that can fit in the box + // along with labels. + // + // Once we have that, we can find the centre point for the chart, by taking the x text protrusion + // on each side, removing that from the size, halving it and adding the left x protrusion width. + // + // This will mean we have a shape fitted to the canvas, as large as it can be with the labels + // and position it in the most space efficient manner + // + // https://dl.dropboxusercontent.com/u/34601363/yeahscience.gif + + var plFont = helpers$1.options._parseFont(scale.options.pointLabels); + + // Get maximum radius of the polygon. Either half the height (minus the text width) or half the width. + // Use this to calculate the offset + change. - Make sure L/R protrusion is at least 0 to stop issues with centre points + var furthestLimits = { + l: 0, + r: scale.width, + t: 0, + b: scale.height - scale.paddingTop + }; + var furthestAngles = {}; + var i, textSize, pointPosition; + + scale.ctx.font = plFont.string; + scale._pointLabelSizes = []; + + var valueCount = getValueCount(scale); + for (i = 0; i < valueCount; i++) { + pointPosition = scale.getPointPosition(i, scale.drawingArea + 5); + textSize = measureLabelSize(scale.ctx, plFont.lineHeight, scale.pointLabels[i] || ''); + scale._pointLabelSizes[i] = textSize; + + // Add quarter circle to make degree 0 mean top of circle + var angleRadians = scale.getIndexAngle(i); + var angle = helpers$1.toDegrees(angleRadians) % 360; + var hLimits = determineLimits(angle, pointPosition.x, textSize.w, 0, 180); + var vLimits = determineLimits(angle, pointPosition.y, textSize.h, 90, 270); + + if (hLimits.start < furthestLimits.l) { + furthestLimits.l = hLimits.start; + furthestAngles.l = angleRadians; + } + + if (hLimits.end > furthestLimits.r) { + furthestLimits.r = hLimits.end; + furthestAngles.r = angleRadians; + } + + if (vLimits.start < furthestLimits.t) { + furthestLimits.t = vLimits.start; + furthestAngles.t = angleRadians; + } + + if (vLimits.end > furthestLimits.b) { + furthestLimits.b = vLimits.end; + furthestAngles.b = angleRadians; + } + } + + scale.setReductions(scale.drawingArea, furthestLimits, furthestAngles); +} + +function getTextAlignForAngle(angle) { + if (angle === 0 || angle === 180) { + return 'center'; + } else if (angle < 180) { + return 'left'; + } + + return 'right'; +} + +function fillText(ctx, text, position, lineHeight) { + var y = position.y + lineHeight / 2; + var i, ilen; + + if (helpers$1.isArray(text)) { + for (i = 0, ilen = text.length; i < ilen; ++i) { + ctx.fillText(text[i], position.x, y); + y += lineHeight; + } + } else { + ctx.fillText(text, position.x, y); + } +} + +function adjustPointPositionForLabelHeight(angle, textSize, position) { + if (angle === 90 || angle === 270) { + position.y -= (textSize.h / 2); + } else if (angle > 270 || angle < 90) { + position.y -= textSize.h; + } +} + +function drawPointLabels(scale) { + var ctx = scale.ctx; + var opts = scale.options; + var angleLineOpts = opts.angleLines; + var gridLineOpts = opts.gridLines; + var pointLabelOpts = opts.pointLabels; + var lineWidth = valueOrDefault$b(angleLineOpts.lineWidth, gridLineOpts.lineWidth); + var lineColor = valueOrDefault$b(angleLineOpts.color, gridLineOpts.color); + var tickBackdropHeight = getTickBackdropHeight(opts); + + ctx.save(); + ctx.lineWidth = lineWidth; + ctx.strokeStyle = lineColor; + if (ctx.setLineDash) { + ctx.setLineDash(resolve$7([angleLineOpts.borderDash, gridLineOpts.borderDash, []])); + ctx.lineDashOffset = resolve$7([angleLineOpts.borderDashOffset, gridLineOpts.borderDashOffset, 0.0]); + } + + var outerDistance = scale.getDistanceFromCenterForValue(opts.ticks.reverse ? scale.min : scale.max); + + // Point Label Font + var plFont = helpers$1.options._parseFont(pointLabelOpts); + + ctx.font = plFont.string; + ctx.textBaseline = 'middle'; + + for (var i = getValueCount(scale) - 1; i >= 0; i--) { + if (angleLineOpts.display && lineWidth && lineColor) { + var outerPosition = scale.getPointPosition(i, outerDistance); + ctx.beginPath(); + ctx.moveTo(scale.xCenter, scale.yCenter); + ctx.lineTo(outerPosition.x, outerPosition.y); + ctx.stroke(); + } + + if (pointLabelOpts.display) { + // Extra pixels out for some label spacing + var extra = (i === 0 ? tickBackdropHeight / 2 : 0); + var pointLabelPosition = scale.getPointPosition(i, outerDistance + extra + 5); + + // Keep this in loop since we may support array properties here + var pointLabelFontColor = valueAtIndexOrDefault$1(pointLabelOpts.fontColor, i, core_defaults.global.defaultFontColor); + ctx.fillStyle = pointLabelFontColor; + + var angleRadians = scale.getIndexAngle(i); + var angle = helpers$1.toDegrees(angleRadians); + ctx.textAlign = getTextAlignForAngle(angle); + adjustPointPositionForLabelHeight(angle, scale._pointLabelSizes[i], pointLabelPosition); + fillText(ctx, scale.pointLabels[i] || '', pointLabelPosition, plFont.lineHeight); + } + } + ctx.restore(); +} + +function drawRadiusLine(scale, gridLineOpts, radius, index) { + var ctx = scale.ctx; + var circular = gridLineOpts.circular; + var valueCount = getValueCount(scale); + var lineColor = valueAtIndexOrDefault$1(gridLineOpts.color, index - 1); + var lineWidth = valueAtIndexOrDefault$1(gridLineOpts.lineWidth, index - 1); + var pointPosition; + + if ((!circular && !valueCount) || !lineColor || !lineWidth) { + return; + } + + ctx.save(); + ctx.strokeStyle = lineColor; + ctx.lineWidth = lineWidth; + if (ctx.setLineDash) { + ctx.setLineDash(gridLineOpts.borderDash || []); + ctx.lineDashOffset = gridLineOpts.borderDashOffset || 0.0; + } + + ctx.beginPath(); + if (circular) { + // Draw circular arcs between the points + ctx.arc(scale.xCenter, scale.yCenter, radius, 0, Math.PI * 2); + } else { + // Draw straight lines connecting each index + pointPosition = scale.getPointPosition(0, radius); + ctx.moveTo(pointPosition.x, pointPosition.y); + + for (var i = 1; i < valueCount; i++) { + pointPosition = scale.getPointPosition(i, radius); + ctx.lineTo(pointPosition.x, pointPosition.y); + } + } + ctx.closePath(); + ctx.stroke(); + ctx.restore(); +} + +function numberOrZero(param) { + return helpers$1.isNumber(param) ? param : 0; +} + +var scale_radialLinear = scale_linearbase.extend({ + setDimensions: function() { + var me = this; + + // Set the unconstrained dimension before label rotation + me.width = me.maxWidth; + me.height = me.maxHeight; + me.paddingTop = getTickBackdropHeight(me.options) / 2; + me.xCenter = Math.floor(me.width / 2); + me.yCenter = Math.floor((me.height - me.paddingTop) / 2); + me.drawingArea = Math.min(me.height - me.paddingTop, me.width) / 2; + }, + + determineDataLimits: function() { + var me = this; + var chart = me.chart; + var min = Number.POSITIVE_INFINITY; + var max = Number.NEGATIVE_INFINITY; + + helpers$1.each(chart.data.datasets, function(dataset, datasetIndex) { + if (chart.isDatasetVisible(datasetIndex)) { + var meta = chart.getDatasetMeta(datasetIndex); + + helpers$1.each(dataset.data, function(rawValue, index) { + var value = +me.getRightValue(rawValue); + if (isNaN(value) || meta.data[index].hidden) { + return; + } + + min = Math.min(value, min); + max = Math.max(value, max); + }); + } + }); + + me.min = (min === Number.POSITIVE_INFINITY ? 0 : min); + me.max = (max === Number.NEGATIVE_INFINITY ? 0 : max); + + // Common base implementation to handle ticks.min, ticks.max, ticks.beginAtZero + me.handleTickRangeOptions(); + }, + + // Returns the maximum number of ticks based on the scale dimension + _computeTickLimit: function() { + return Math.ceil(this.drawingArea / getTickBackdropHeight(this.options)); + }, + + convertTicksToLabels: function() { + var me = this; + + scale_linearbase.prototype.convertTicksToLabels.call(me); + + // Point labels + me.pointLabels = me.chart.data.labels.map(me.options.pointLabels.callback, me); + }, + + getLabelForIndex: function(index, datasetIndex) { + return +this.getRightValue(this.chart.data.datasets[datasetIndex].data[index]); + }, + + fit: function() { + var me = this; + var opts = me.options; + + if (opts.display && opts.pointLabels.display) { + fitWithPointLabels(me); + } else { + me.setCenterPoint(0, 0, 0, 0); + } + }, + + /** + * Set radius reductions and determine new radius and center point + * @private + */ + setReductions: function(largestPossibleRadius, furthestLimits, furthestAngles) { + var me = this; + var radiusReductionLeft = furthestLimits.l / Math.sin(furthestAngles.l); + var radiusReductionRight = Math.max(furthestLimits.r - me.width, 0) / Math.sin(furthestAngles.r); + var radiusReductionTop = -furthestLimits.t / Math.cos(furthestAngles.t); + var radiusReductionBottom = -Math.max(furthestLimits.b - (me.height - me.paddingTop), 0) / Math.cos(furthestAngles.b); + + radiusReductionLeft = numberOrZero(radiusReductionLeft); + radiusReductionRight = numberOrZero(radiusReductionRight); + radiusReductionTop = numberOrZero(radiusReductionTop); + radiusReductionBottom = numberOrZero(radiusReductionBottom); + + me.drawingArea = Math.min( + Math.floor(largestPossibleRadius - (radiusReductionLeft + radiusReductionRight) / 2), + Math.floor(largestPossibleRadius - (radiusReductionTop + radiusReductionBottom) / 2)); + me.setCenterPoint(radiusReductionLeft, radiusReductionRight, radiusReductionTop, radiusReductionBottom); + }, + + setCenterPoint: function(leftMovement, rightMovement, topMovement, bottomMovement) { + var me = this; + var maxRight = me.width - rightMovement - me.drawingArea; + var maxLeft = leftMovement + me.drawingArea; + var maxTop = topMovement + me.drawingArea; + var maxBottom = (me.height - me.paddingTop) - bottomMovement - me.drawingArea; + + me.xCenter = Math.floor(((maxLeft + maxRight) / 2) + me.left); + me.yCenter = Math.floor(((maxTop + maxBottom) / 2) + me.top + me.paddingTop); + }, + + getIndexAngle: function(index) { + var angleMultiplier = (Math.PI * 2) / getValueCount(this); + var startAngle = this.chart.options && this.chart.options.startAngle ? + this.chart.options.startAngle : + 0; + + var startAngleRadians = startAngle * Math.PI * 2 / 360; + + // Start from the top instead of right, so remove a quarter of the circle + return index * angleMultiplier + startAngleRadians; + }, + + getDistanceFromCenterForValue: function(value) { + var me = this; + + if (value === null) { + return 0; // null always in center + } + + // Take into account half font size + the yPadding of the top value + var scalingFactor = me.drawingArea / (me.max - me.min); + if (me.options.ticks.reverse) { + return (me.max - value) * scalingFactor; + } + return (value - me.min) * scalingFactor; + }, + + getPointPosition: function(index, distanceFromCenter) { + var me = this; + var thisAngle = me.getIndexAngle(index) - (Math.PI / 2); + return { + x: Math.cos(thisAngle) * distanceFromCenter + me.xCenter, + y: Math.sin(thisAngle) * distanceFromCenter + me.yCenter + }; + }, + + getPointPositionForValue: function(index, value) { + return this.getPointPosition(index, this.getDistanceFromCenterForValue(value)); + }, + + getBasePosition: function() { + var me = this; + var min = me.min; + var max = me.max; + + return me.getPointPositionForValue(0, + me.beginAtZero ? 0 : + min < 0 && max < 0 ? max : + min > 0 && max > 0 ? min : + 0); + }, + + draw: function() { + var me = this; + var opts = me.options; + var gridLineOpts = opts.gridLines; + var tickOpts = opts.ticks; + + if (opts.display) { + var ctx = me.ctx; + var startAngle = this.getIndexAngle(0); + var tickFont = helpers$1.options._parseFont(tickOpts); + + if (opts.angleLines.display || opts.pointLabels.display) { + drawPointLabels(me); + } + + helpers$1.each(me.ticks, function(label, index) { + // Don't draw a centre value (if it is minimum) + if (index > 0 || tickOpts.reverse) { + var yCenterOffset = me.getDistanceFromCenterForValue(me.ticksAsNumbers[index]); + + // Draw circular lines around the scale + if (gridLineOpts.display && index !== 0) { + drawRadiusLine(me, gridLineOpts, yCenterOffset, index); + } + + if (tickOpts.display) { + var tickFontColor = valueOrDefault$b(tickOpts.fontColor, core_defaults.global.defaultFontColor); + ctx.font = tickFont.string; + + ctx.save(); + ctx.translate(me.xCenter, me.yCenter); + ctx.rotate(startAngle); + + if (tickOpts.showLabelBackdrop) { + var labelWidth = ctx.measureText(label).width; + ctx.fillStyle = tickOpts.backdropColor; + ctx.fillRect( + -labelWidth / 2 - tickOpts.backdropPaddingX, + -yCenterOffset - tickFont.size / 2 - tickOpts.backdropPaddingY, + labelWidth + tickOpts.backdropPaddingX * 2, + tickFont.size + tickOpts.backdropPaddingY * 2 + ); + } + + ctx.textAlign = 'center'; + ctx.textBaseline = 'middle'; + ctx.fillStyle = tickFontColor; + ctx.fillText(label, 0, -yCenterOffset); + ctx.restore(); + } + } + }); + } + } +}); + +// INTERNAL: static default options, registered in src/index.js +var _defaults$3 = defaultConfig$3; +scale_radialLinear._defaults = _defaults$3; + +var valueOrDefault$c = helpers$1.valueOrDefault; + +// Integer constants are from the ES6 spec. +var MIN_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991; +var MAX_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; + +var INTERVALS = { + millisecond: { + common: true, + size: 1, + steps: [1, 2, 5, 10, 20, 50, 100, 250, 500] + }, + second: { + common: true, + size: 1000, + steps: [1, 2, 5, 10, 15, 30] + }, + minute: { + common: true, + size: 60000, + steps: [1, 2, 5, 10, 15, 30] + }, + hour: { + common: true, + size: 3600000, + steps: [1, 2, 3, 6, 12] + }, + day: { + common: true, + size: 86400000, + steps: [1, 2, 5] + }, + week: { + common: false, + size: 604800000, + steps: [1, 2, 3, 4] + }, + month: { + common: true, + size: 2.628e9, + steps: [1, 2, 3] + }, + quarter: { + common: false, + size: 7.884e9, + steps: [1, 2, 3, 4] + }, + year: { + common: true, + size: 3.154e10 + } +}; + +var UNITS = Object.keys(INTERVALS); + +function sorter(a, b) { + return a - b; +} + +function arrayUnique(items) { + var hash = {}; + var out = []; + var i, ilen, item; + + for (i = 0, ilen = items.length; i < ilen; ++i) { + item = items[i]; + if (!hash[item]) { + hash[item] = true; + out.push(item); + } + } + + return out; +} + +/** + * Returns an array of {time, pos} objects used to interpolate a specific `time` or position + * (`pos`) on the scale, by searching entries before and after the requested value. `pos` is + * a decimal between 0 and 1: 0 being the start of the scale (left or top) and 1 the other + * extremity (left + width or top + height). Note that it would be more optimized to directly + * store pre-computed pixels, but the scale dimensions are not guaranteed at the time we need + * to create the lookup table. The table ALWAYS contains at least two items: min and max. + * + * @param {number[]} timestamps - timestamps sorted from lowest to highest. + * @param {string} distribution - If 'linear', timestamps will be spread linearly along the min + * and max range, so basically, the table will contains only two items: {min, 0} and {max, 1}. + * If 'series', timestamps will be positioned at the same distance from each other. In this + * case, only timestamps that break the time linearity are registered, meaning that in the + * best case, all timestamps are linear, the table contains only min and max. + */ +function buildLookupTable(timestamps, min, max, distribution) { + if (distribution === 'linear' || !timestamps.length) { + return [ + {time: min, pos: 0}, + {time: max, pos: 1} + ]; + } + + var table = []; + var items = [min]; + var i, ilen, prev, curr, next; + + for (i = 0, ilen = timestamps.length; i < ilen; ++i) { + curr = timestamps[i]; + if (curr > min && curr < max) { + items.push(curr); + } + } + + items.push(max); + + for (i = 0, ilen = items.length; i < ilen; ++i) { + next = items[i + 1]; + prev = items[i - 1]; + curr = items[i]; + + // only add points that breaks the scale linearity + if (prev === undefined || next === undefined || Math.round((next + prev) / 2) !== curr) { + table.push({time: curr, pos: i / (ilen - 1)}); + } + } + + return table; +} + +// @see adapted from https://www.anujgakhar.com/2014/03/01/binary-search-in-javascript/ +function lookup(table, key, value) { + var lo = 0; + var hi = table.length - 1; + var mid, i0, i1; + + while (lo >= 0 && lo <= hi) { + mid = (lo + hi) >> 1; + i0 = table[mid - 1] || null; + i1 = table[mid]; + + if (!i0) { + // given value is outside table (before first item) + return {lo: null, hi: i1}; + } else if (i1[key] < value) { + lo = mid + 1; + } else if (i0[key] > value) { + hi = mid - 1; + } else { + return {lo: i0, hi: i1}; + } + } + + // given value is outside table (after last item) + return {lo: i1, hi: null}; +} + +/** + * Linearly interpolates the given source `value` using the table items `skey` values and + * returns the associated `tkey` value. For example, interpolate(table, 'time', 42, 'pos') + * returns the position for a timestamp equal to 42. If value is out of bounds, values at + * index [0, 1] or [n - 1, n] are used for the interpolation. + */ +function interpolate$1(table, skey, sval, tkey) { + var range = lookup(table, skey, sval); + + // Note: the lookup table ALWAYS contains at least 2 items (min and max) + var prev = !range.lo ? table[0] : !range.hi ? table[table.length - 2] : range.lo; + var next = !range.lo ? table[1] : !range.hi ? table[table.length - 1] : range.hi; + + var span = next[skey] - prev[skey]; + var ratio = span ? (sval - prev[skey]) / span : 0; + var offset = (next[tkey] - prev[tkey]) * ratio; + + return prev[tkey] + offset; +} + +function toTimestamp(scale, input) { + var adapter = scale._adapter; + var options = scale.options.time; + var parser = options.parser; + var format = parser || options.format; + var value = input; + + if (typeof parser === 'function') { + value = parser(value); + } + + // Only parse if its not a timestamp already + if (!helpers$1.isFinite(value)) { + value = typeof format === 'string' + ? adapter.parse(value, format) + : adapter.parse(value); + } + + if (value !== null) { + return +value; + } + + // Labels are in an incompatible format and no `parser` has been provided. + // The user might still use the deprecated `format` option for parsing. + if (!parser && typeof format === 'function') { + value = format(input); + + // `format` could return something else than a timestamp, if so, parse it + if (!helpers$1.isFinite(value)) { + value = adapter.parse(value); + } + } + + return value; +} + +function parse(scale, input) { + if (helpers$1.isNullOrUndef(input)) { + return null; + } + + var options = scale.options.time; + var value = toTimestamp(scale, scale.getRightValue(input)); + if (value === null) { + return value; + } + + if (options.round) { + value = +scale._adapter.startOf(value, options.round); + } + + return value; +} + +/** + * Returns the number of unit to skip to be able to display up to `capacity` number of ticks + * in `unit` for the given `min` / `max` range and respecting the interval steps constraints. + */ +function determineStepSize(min, max, unit, capacity) { + var range = max - min; + var interval = INTERVALS[unit]; + var milliseconds = interval.size; + var steps = interval.steps; + var i, ilen, factor; + + if (!steps) { + return Math.ceil(range / (capacity * milliseconds)); + } + + for (i = 0, ilen = steps.length; i < ilen; ++i) { + factor = steps[i]; + if (Math.ceil(range / (milliseconds * factor)) <= capacity) { + break; + } + } + + return factor; +} + +/** + * Figures out what unit results in an appropriate number of auto-generated ticks + */ +function determineUnitForAutoTicks(minUnit, min, max, capacity) { + var ilen = UNITS.length; + var i, interval, factor; + + for (i = UNITS.indexOf(minUnit); i < ilen - 1; ++i) { + interval = INTERVALS[UNITS[i]]; + factor = interval.steps ? interval.steps[interval.steps.length - 1] : MAX_INTEGER; + + if (interval.common && Math.ceil((max - min) / (factor * interval.size)) <= capacity) { + return UNITS[i]; + } + } + + return UNITS[ilen - 1]; +} + +/** + * Figures out what unit to format a set of ticks with + */ +function determineUnitForFormatting(scale, ticks, minUnit, min, max) { + var ilen = UNITS.length; + var i, unit; + + for (i = ilen - 1; i >= UNITS.indexOf(minUnit); i--) { + unit = UNITS[i]; + if (INTERVALS[unit].common && scale._adapter.diff(max, min, unit) >= ticks.length) { + return unit; + } + } + + return UNITS[minUnit ? UNITS.indexOf(minUnit) : 0]; +} + +function determineMajorUnit(unit) { + for (var i = UNITS.indexOf(unit) + 1, ilen = UNITS.length; i < ilen; ++i) { + if (INTERVALS[UNITS[i]].common) { + return UNITS[i]; + } + } +} + +/** + * Generates a maximum of `capacity` timestamps between min and max, rounded to the + * `minor` unit, aligned on the `major` unit and using the given scale time `options`. + * Important: this method can return ticks outside the min and max range, it's the + * responsibility of the calling code to clamp values if needed. + */ +function generate(scale, min, max, capacity) { + var adapter = scale._adapter; + var options = scale.options; + var timeOpts = options.time; + var minor = timeOpts.unit || determineUnitForAutoTicks(timeOpts.minUnit, min, max, capacity); + var major = determineMajorUnit(minor); + var stepSize = valueOrDefault$c(timeOpts.stepSize, timeOpts.unitStepSize); + var weekday = minor === 'week' ? timeOpts.isoWeekday : false; + var majorTicksEnabled = options.ticks.major.enabled; + var interval = INTERVALS[minor]; + var first = min; + var last = max; + var ticks = []; + var time; + + if (!stepSize) { + stepSize = determineStepSize(min, max, minor, capacity); + } + + // For 'week' unit, handle the first day of week option + if (weekday) { + first = +adapter.startOf(first, 'isoWeek', weekday); + last = +adapter.startOf(last, 'isoWeek', weekday); + } + + // Align first/last ticks on unit + first = +adapter.startOf(first, weekday ? 'day' : minor); + last = +adapter.startOf(last, weekday ? 'day' : minor); + + // Make sure that the last tick include max + if (last < max) { + last = +adapter.add(last, 1, minor); + } + + time = first; + + if (majorTicksEnabled && major && !weekday && !timeOpts.round) { + // Align the first tick on the previous `minor` unit aligned on the `major` unit: + // we first aligned time on the previous `major` unit then add the number of full + // stepSize there is between first and the previous major time. + time = +adapter.startOf(time, major); + time = +adapter.add(time, ~~((first - time) / (interval.size * stepSize)) * stepSize, minor); + } + + for (; time < last; time = +adapter.add(time, stepSize, minor)) { + ticks.push(+time); + } + + ticks.push(+time); + + return ticks; +} + +/** + * Returns the start and end offsets from edges in the form of {start, end} + * where each value is a relative width to the scale and ranges between 0 and 1. + * They add extra margins on the both sides by scaling down the original scale. + * Offsets are added when the `offset` option is true. + */ +function computeOffsets(table, ticks, min, max, options) { + var start = 0; + var end = 0; + var first, last; + + if (options.offset && ticks.length) { + if (!options.time.min) { + first = interpolate$1(table, 'time', ticks[0], 'pos'); + if (ticks.length === 1) { + start = 1 - first; + } else { + start = (interpolate$1(table, 'time', ticks[1], 'pos') - first) / 2; + } + } + if (!options.time.max) { + last = interpolate$1(table, 'time', ticks[ticks.length - 1], 'pos'); + if (ticks.length === 1) { + end = last; + } else { + end = (last - interpolate$1(table, 'time', ticks[ticks.length - 2], 'pos')) / 2; + } + } + } + + return {start: start, end: end}; +} + +function ticksFromTimestamps(scale, values, majorUnit) { + var ticks = []; + var i, ilen, value, major; + + for (i = 0, ilen = values.length; i < ilen; ++i) { + value = values[i]; + major = majorUnit ? value === +scale._adapter.startOf(value, majorUnit) : false; + + ticks.push({ + value: value, + major: major + }); + } + + return ticks; +} + +var defaultConfig$4 = { + position: 'bottom', + + /** + * Data distribution along the scale: + * - 'linear': data are spread according to their time (distances can vary), + * - 'series': data are spread at the same distance from each other. + * @see https://github.com/chartjs/Chart.js/pull/4507 + * @since 2.7.0 + */ + distribution: 'linear', + + /** + * Scale boundary strategy (bypassed by min/max time options) + * - `data`: make sure data are fully visible, ticks outside are removed + * - `ticks`: make sure ticks are fully visible, data outside are truncated + * @see https://github.com/chartjs/Chart.js/pull/4556 + * @since 2.7.0 + */ + bounds: 'data', + + adapters: {}, + time: { + parser: false, // false == a pattern string from https://momentjs.com/docs/#/parsing/string-format/ or a custom callback that converts its argument to a moment + format: false, // DEPRECATED false == date objects, moment object, callback or a pattern string from https://momentjs.com/docs/#/parsing/string-format/ + unit: false, // false == automatic or override with week, month, year, etc. + round: false, // none, or override with week, month, year, etc. + displayFormat: false, // DEPRECATED + isoWeekday: false, // override week start day - see https://momentjs.com/docs/#/get-set/iso-weekday/ + minUnit: 'millisecond', + displayFormats: {} + }, + ticks: { + autoSkip: false, + + /** + * Ticks generation input values: + * - 'auto': generates "optimal" ticks based on scale size and time options. + * - 'data': generates ticks from data (including labels from data {t|x|y} objects). + * - 'labels': generates ticks from user given `data.labels` values ONLY. + * @see https://github.com/chartjs/Chart.js/pull/4507 + * @since 2.7.0 + */ + source: 'auto', + + major: { + enabled: false + } + } +}; + +var scale_time = core_scale.extend({ + initialize: function() { + this.mergeTicksOptions(); + core_scale.prototype.initialize.call(this); + }, + + update: function() { + var me = this; + var options = me.options; + var time = options.time || (options.time = {}); + var adapter = me._adapter = new core_adapters._date(options.adapters.date); + + // DEPRECATIONS: output a message only one time per update + if (time.format) { + console.warn('options.time.format is deprecated and replaced by options.time.parser.'); + } + + // Backward compatibility: before introducing adapter, `displayFormats` was + // supposed to contain *all* unit/string pairs but this can't be resolved + // when loading the scale (adapters are loaded afterward), so let's populate + // missing formats on update + helpers$1.mergeIf(time.displayFormats, adapter.formats()); + + return core_scale.prototype.update.apply(me, arguments); + }, + + /** + * Allows data to be referenced via 't' attribute + */ + getRightValue: function(rawValue) { + if (rawValue && rawValue.t !== undefined) { + rawValue = rawValue.t; + } + return core_scale.prototype.getRightValue.call(this, rawValue); + }, + + determineDataLimits: function() { + var me = this; + var chart = me.chart; + var adapter = me._adapter; + var timeOpts = me.options.time; + var unit = timeOpts.unit || 'day'; + var min = MAX_INTEGER; + var max = MIN_INTEGER; + var timestamps = []; + var datasets = []; + var labels = []; + var i, j, ilen, jlen, data, timestamp; + var dataLabels = chart.data.labels || []; + + // Convert labels to timestamps + for (i = 0, ilen = dataLabels.length; i < ilen; ++i) { + labels.push(parse(me, dataLabels[i])); + } + + // Convert data to timestamps + for (i = 0, ilen = (chart.data.datasets || []).length; i < ilen; ++i) { + if (chart.isDatasetVisible(i)) { + data = chart.data.datasets[i].data; + + // Let's consider that all data have the same format. + if (helpers$1.isObject(data[0])) { + datasets[i] = []; + + for (j = 0, jlen = data.length; j < jlen; ++j) { + timestamp = parse(me, data[j]); + timestamps.push(timestamp); + datasets[i][j] = timestamp; + } + } else { + for (j = 0, jlen = labels.length; j < jlen; ++j) { + timestamps.push(labels[j]); + } + datasets[i] = labels.slice(0); + } + } else { + datasets[i] = []; + } + } + + if (labels.length) { + // Sort labels **after** data have been converted + labels = arrayUnique(labels).sort(sorter); + min = Math.min(min, labels[0]); + max = Math.max(max, labels[labels.length - 1]); + } + + if (timestamps.length) { + timestamps = arrayUnique(timestamps).sort(sorter); + min = Math.min(min, timestamps[0]); + max = Math.max(max, timestamps[timestamps.length - 1]); + } + + min = parse(me, timeOpts.min) || min; + max = parse(me, timeOpts.max) || max; + + // In case there is no valid min/max, set limits based on unit time option + min = min === MAX_INTEGER ? +adapter.startOf(Date.now(), unit) : min; + max = max === MIN_INTEGER ? +adapter.endOf(Date.now(), unit) + 1 : max; + + // Make sure that max is strictly higher than min (required by the lookup table) + me.min = Math.min(min, max); + me.max = Math.max(min + 1, max); + + // PRIVATE + me._horizontal = me.isHorizontal(); + me._table = []; + me._timestamps = { + data: timestamps, + datasets: datasets, + labels: labels + }; + }, + + buildTicks: function() { + var me = this; + var min = me.min; + var max = me.max; + var options = me.options; + var timeOpts = options.time; + var timestamps = []; + var ticks = []; + var i, ilen, timestamp; + + switch (options.ticks.source) { + case 'data': + timestamps = me._timestamps.data; + break; + case 'labels': + timestamps = me._timestamps.labels; + break; + case 'auto': + default: + timestamps = generate(me, min, max, me.getLabelCapacity(min), options); + } + + if (options.bounds === 'ticks' && timestamps.length) { + min = timestamps[0]; + max = timestamps[timestamps.length - 1]; + } + + // Enforce limits with user min/max options + min = parse(me, timeOpts.min) || min; + max = parse(me, timeOpts.max) || max; + + // Remove ticks outside the min/max range + for (i = 0, ilen = timestamps.length; i < ilen; ++i) { + timestamp = timestamps[i]; + if (timestamp >= min && timestamp <= max) { + ticks.push(timestamp); + } + } + + me.min = min; + me.max = max; + + // PRIVATE + me._unit = timeOpts.unit || determineUnitForFormatting(me, ticks, timeOpts.minUnit, me.min, me.max); + me._majorUnit = determineMajorUnit(me._unit); + me._table = buildLookupTable(me._timestamps.data, min, max, options.distribution); + me._offsets = computeOffsets(me._table, ticks, min, max, options); + + if (options.ticks.reverse) { + ticks.reverse(); + } + + return ticksFromTimestamps(me, ticks, me._majorUnit); + }, + + getLabelForIndex: function(index, datasetIndex) { + var me = this; + var adapter = me._adapter; + var data = me.chart.data; + var timeOpts = me.options.time; + var label = data.labels && index < data.labels.length ? data.labels[index] : ''; + var value = data.datasets[datasetIndex].data[index]; + + if (helpers$1.isObject(value)) { + label = me.getRightValue(value); + } + if (timeOpts.tooltipFormat) { + return adapter.format(toTimestamp(me, label), timeOpts.tooltipFormat); + } + if (typeof label === 'string') { + return label; + } + return adapter.format(toTimestamp(me, label), timeOpts.displayFormats.datetime); + }, + + /** + * Function to format an individual tick mark + * @private + */ + tickFormatFunction: function(time, index, ticks, format) { + var me = this; + var adapter = me._adapter; + var options = me.options; + var formats = options.time.displayFormats; + var minorFormat = formats[me._unit]; + var majorUnit = me._majorUnit; + var majorFormat = formats[majorUnit]; + var majorTime = +adapter.startOf(time, majorUnit); + var majorTickOpts = options.ticks.major; + var major = majorTickOpts.enabled && majorUnit && majorFormat && time === majorTime; + var label = adapter.format(time, format ? format : major ? majorFormat : minorFormat); + var tickOpts = major ? majorTickOpts : options.ticks.minor; + var formatter = valueOrDefault$c(tickOpts.callback, tickOpts.userCallback); + + return formatter ? formatter(label, index, ticks) : label; + }, + + convertTicksToLabels: function(ticks) { + var labels = []; + var i, ilen; + + for (i = 0, ilen = ticks.length; i < ilen; ++i) { + labels.push(this.tickFormatFunction(ticks[i].value, i, ticks)); + } + + return labels; + }, + + /** + * @private + */ + getPixelForOffset: function(time) { + var me = this; + var isReverse = me.options.ticks.reverse; + var size = me._horizontal ? me.width : me.height; + var start = me._horizontal ? isReverse ? me.right : me.left : isReverse ? me.bottom : me.top; + var pos = interpolate$1(me._table, 'time', time, 'pos'); + var offset = size * (me._offsets.start + pos) / (me._offsets.start + 1 + me._offsets.end); + + return isReverse ? start - offset : start + offset; + }, + + getPixelForValue: function(value, index, datasetIndex) { + var me = this; + var time = null; + + if (index !== undefined && datasetIndex !== undefined) { + time = me._timestamps.datasets[datasetIndex][index]; + } + + if (time === null) { + time = parse(me, value); + } + + if (time !== null) { + return me.getPixelForOffset(time); + } + }, + + getPixelForTick: function(index) { + var ticks = this.getTicks(); + return index >= 0 && index < ticks.length ? + this.getPixelForOffset(ticks[index].value) : + null; + }, + + getValueForPixel: function(pixel) { + var me = this; + var size = me._horizontal ? me.width : me.height; + var start = me._horizontal ? me.left : me.top; + var pos = (size ? (pixel - start) / size : 0) * (me._offsets.start + 1 + me._offsets.start) - me._offsets.end; + var time = interpolate$1(me._table, 'pos', pos, 'time'); + + // DEPRECATION, we should return time directly + return me._adapter._create(time); + }, + + /** + * Crude approximation of what the label width might be + * @private + */ + getLabelWidth: function(label) { + var me = this; + var ticksOpts = me.options.ticks; + var tickLabelWidth = me.ctx.measureText(label).width; + var angle = helpers$1.toRadians(ticksOpts.maxRotation); + var cosRotation = Math.cos(angle); + var sinRotation = Math.sin(angle); + var tickFontSize = valueOrDefault$c(ticksOpts.fontSize, core_defaults.global.defaultFontSize); + + return (tickLabelWidth * cosRotation) + (tickFontSize * sinRotation); + }, + + /** + * @private + */ + getLabelCapacity: function(exampleTime) { + var me = this; + + // pick the longest format (milliseconds) for guestimation + var format = me.options.time.displayFormats.millisecond; + var exampleLabel = me.tickFormatFunction(exampleTime, 0, [], format); + var tickLabelWidth = me.getLabelWidth(exampleLabel); + var innerWidth = me.isHorizontal() ? me.width : me.height; + var capacity = Math.floor(innerWidth / tickLabelWidth); + + return capacity > 0 ? capacity : 1; + } +}); + +// INTERNAL: static default options, registered in src/index.js +var _defaults$4 = defaultConfig$4; +scale_time._defaults = _defaults$4; + +var scales = { + category: scale_category, + linear: scale_linear, + logarithmic: scale_logarithmic, + radialLinear: scale_radialLinear, + time: scale_time +}; + +var moment = createCommonjsModule(function (module, exports) { +(function (global, factory) { + module.exports = factory(); +}(commonjsGlobal, (function () { + var hookCallback; + + function hooks () { + return hookCallback.apply(null, arguments); + } + + // This is done to register the method called with moment() + // without creating circular dependencies. + function setHookCallback (callback) { + hookCallback = callback; + } + + function isArray(input) { + return input instanceof Array || Object.prototype.toString.call(input) === '[object Array]'; + } + + function isObject(input) { + // IE8 will treat undefined and null as object if it wasn't for + // input != null + return input != null && Object.prototype.toString.call(input) === '[object Object]'; + } + + function isObjectEmpty(obj) { + if (Object.getOwnPropertyNames) { + return (Object.getOwnPropertyNames(obj).length === 0); + } else { + var k; + for (k in obj) { + if (obj.hasOwnProperty(k)) { + return false; + } + } + return true; + } + } + + function isUndefined(input) { + return input === void 0; + } + + function isNumber(input) { + return typeof input === 'number' || Object.prototype.toString.call(input) === '[object Number]'; + } + + function isDate(input) { + return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]'; + } + + function map(arr, fn) { + var res = [], i; + for (i = 0; i < arr.length; ++i) { + res.push(fn(arr[i], i)); + } + return res; + } + + function hasOwnProp(a, b) { + return Object.prototype.hasOwnProperty.call(a, b); + } + + function extend(a, b) { + for (var i in b) { + if (hasOwnProp(b, i)) { + a[i] = b[i]; + } + } + + if (hasOwnProp(b, 'toString')) { + a.toString = b.toString; + } + + if (hasOwnProp(b, 'valueOf')) { + a.valueOf = b.valueOf; + } + + return a; + } + + function createUTC (input, format, locale, strict) { + return createLocalOrUTC(input, format, locale, strict, true).utc(); + } + + function defaultParsingFlags() { + // We need to deep clone this object. + return { + empty : false, + unusedTokens : [], + unusedInput : [], + overflow : -2, + charsLeftOver : 0, + nullInput : false, + invalidMonth : null, + invalidFormat : false, + userInvalidated : false, + iso : false, + parsedDateParts : [], + meridiem : null, + rfc2822 : false, + weekdayMismatch : false + }; + } + + function getParsingFlags(m) { + if (m._pf == null) { + m._pf = defaultParsingFlags(); + } + return m._pf; + } + + var some; + if (Array.prototype.some) { + some = Array.prototype.some; + } else { + some = function (fun) { + var t = Object(this); + var len = t.length >>> 0; + + for (var i = 0; i < len; i++) { + if (i in t && fun.call(this, t[i], i, t)) { + return true; + } + } + + return false; + }; + } + + function isValid(m) { + if (m._isValid == null) { + var flags = getParsingFlags(m); + var parsedParts = some.call(flags.parsedDateParts, function (i) { + return i != null; + }); + var isNowValid = !isNaN(m._d.getTime()) && + flags.overflow < 0 && + !flags.empty && + !flags.invalidMonth && + !flags.invalidWeekday && + !flags.weekdayMismatch && + !flags.nullInput && + !flags.invalidFormat && + !flags.userInvalidated && + (!flags.meridiem || (flags.meridiem && parsedParts)); + + if (m._strict) { + isNowValid = isNowValid && + flags.charsLeftOver === 0 && + flags.unusedTokens.length === 0 && + flags.bigHour === undefined; + } + + if (Object.isFrozen == null || !Object.isFrozen(m)) { + m._isValid = isNowValid; + } + else { + return isNowValid; + } + } + return m._isValid; + } + + function createInvalid (flags) { + var m = createUTC(NaN); + if (flags != null) { + extend(getParsingFlags(m), flags); + } + else { + getParsingFlags(m).userInvalidated = true; + } + + return m; + } + + // Plugins that add properties should also add the key here (null value), + // so we can properly clone ourselves. + var momentProperties = hooks.momentProperties = []; + + function copyConfig(to, from) { + var i, prop, val; + + if (!isUndefined(from._isAMomentObject)) { + to._isAMomentObject = from._isAMomentObject; + } + if (!isUndefined(from._i)) { + to._i = from._i; + } + if (!isUndefined(from._f)) { + to._f = from._f; + } + if (!isUndefined(from._l)) { + to._l = from._l; + } + if (!isUndefined(from._strict)) { + to._strict = from._strict; + } + if (!isUndefined(from._tzm)) { + to._tzm = from._tzm; + } + if (!isUndefined(from._isUTC)) { + to._isUTC = from._isUTC; + } + if (!isUndefined(from._offset)) { + to._offset = from._offset; + } + if (!isUndefined(from._pf)) { + to._pf = getParsingFlags(from); + } + if (!isUndefined(from._locale)) { + to._locale = from._locale; + } + + if (momentProperties.length > 0) { + for (i = 0; i < momentProperties.length; i++) { + prop = momentProperties[i]; + val = from[prop]; + if (!isUndefined(val)) { + to[prop] = val; + } + } + } + + return to; + } + + var updateInProgress = false; + + // Moment prototype object + function Moment(config) { + copyConfig(this, config); + this._d = new Date(config._d != null ? config._d.getTime() : NaN); + if (!this.isValid()) { + this._d = new Date(NaN); + } + // Prevent infinite loop in case updateOffset creates new moment + // objects. + if (updateInProgress === false) { + updateInProgress = true; + hooks.updateOffset(this); + updateInProgress = false; + } + } + + function isMoment (obj) { + return obj instanceof Moment || (obj != null && obj._isAMomentObject != null); + } + + function absFloor (number) { + if (number < 0) { + // -0 -> 0 + return Math.ceil(number) || 0; + } else { + return Math.floor(number); + } + } + + function toInt(argumentForCoercion) { + var coercedNumber = +argumentForCoercion, + value = 0; + + if (coercedNumber !== 0 && isFinite(coercedNumber)) { + value = absFloor(coercedNumber); + } + + return value; + } + + // compare two arrays, return the number of differences + function compareArrays(array1, array2, dontConvert) { + var len = Math.min(array1.length, array2.length), + lengthDiff = Math.abs(array1.length - array2.length), + diffs = 0, + i; + for (i = 0; i < len; i++) { + if ((dontConvert && array1[i] !== array2[i]) || + (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) { + diffs++; + } + } + return diffs + lengthDiff; + } + + function warn(msg) { + if (hooks.suppressDeprecationWarnings === false && + (typeof console !== 'undefined') && console.warn) { + console.warn('Deprecation warning: ' + msg); + } + } + + function deprecate(msg, fn) { + var firstTime = true; + + return extend(function () { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(null, msg); + } + if (firstTime) { + var args = []; + var arg; + for (var i = 0; i < arguments.length; i++) { + arg = ''; + if (typeof arguments[i] === 'object') { + arg += '\n[' + i + '] '; + for (var key in arguments[0]) { + arg += key + ': ' + arguments[0][key] + ', '; + } + arg = arg.slice(0, -2); // Remove trailing comma and space + } else { + arg = arguments[i]; + } + args.push(arg); + } + warn(msg + '\nArguments: ' + Array.prototype.slice.call(args).join('') + '\n' + (new Error()).stack); + firstTime = false; + } + return fn.apply(this, arguments); + }, fn); + } + + var deprecations = {}; + + function deprecateSimple(name, msg) { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(name, msg); + } + if (!deprecations[name]) { + warn(msg); + deprecations[name] = true; + } + } + + hooks.suppressDeprecationWarnings = false; + hooks.deprecationHandler = null; + + function isFunction(input) { + return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]'; + } + + function set (config) { + var prop, i; + for (i in config) { + prop = config[i]; + if (isFunction(prop)) { + this[i] = prop; + } else { + this['_' + i] = prop; + } + } + this._config = config; + // Lenient ordinal parsing accepts just a number in addition to + // number + (possibly) stuff coming from _dayOfMonthOrdinalParse. + // TODO: Remove "ordinalParse" fallback in next major release. + this._dayOfMonthOrdinalParseLenient = new RegExp( + (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + + '|' + (/\d{1,2}/).source); + } + + function mergeConfigs(parentConfig, childConfig) { + var res = extend({}, parentConfig), prop; + for (prop in childConfig) { + if (hasOwnProp(childConfig, prop)) { + if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) { + res[prop] = {}; + extend(res[prop], parentConfig[prop]); + extend(res[prop], childConfig[prop]); + } else if (childConfig[prop] != null) { + res[prop] = childConfig[prop]; + } else { + delete res[prop]; + } + } + } + for (prop in parentConfig) { + if (hasOwnProp(parentConfig, prop) && + !hasOwnProp(childConfig, prop) && + isObject(parentConfig[prop])) { + // make sure changes to properties don't modify parent config + res[prop] = extend({}, res[prop]); + } + } + return res; + } + + function Locale(config) { + if (config != null) { + this.set(config); + } + } + + var keys; + + if (Object.keys) { + keys = Object.keys; + } else { + keys = function (obj) { + var i, res = []; + for (i in obj) { + if (hasOwnProp(obj, i)) { + res.push(i); + } + } + return res; + }; + } + + var defaultCalendar = { + sameDay : '[Today at] LT', + nextDay : '[Tomorrow at] LT', + nextWeek : 'dddd [at] LT', + lastDay : '[Yesterday at] LT', + lastWeek : '[Last] dddd [at] LT', + sameElse : 'L' + }; + + function calendar (key, mom, now) { + var output = this._calendar[key] || this._calendar['sameElse']; + return isFunction(output) ? output.call(mom, now) : output; + } + + var defaultLongDateFormat = { + LTS : 'h:mm:ss A', + LT : 'h:mm A', + L : 'MM/DD/YYYY', + LL : 'MMMM D, YYYY', + LLL : 'MMMM D, YYYY h:mm A', + LLLL : 'dddd, MMMM D, YYYY h:mm A' + }; + + function longDateFormat (key) { + var format = this._longDateFormat[key], + formatUpper = this._longDateFormat[key.toUpperCase()]; + + if (format || !formatUpper) { + return format; + } + + this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) { + return val.slice(1); + }); + + return this._longDateFormat[key]; + } + + var defaultInvalidDate = 'Invalid date'; + + function invalidDate () { + return this._invalidDate; + } + + var defaultOrdinal = '%d'; + var defaultDayOfMonthOrdinalParse = /\d{1,2}/; + + function ordinal (number) { + return this._ordinal.replace('%d', number); + } + + var defaultRelativeTime = { + future : 'in %s', + past : '%s ago', + s : 'a few seconds', + ss : '%d seconds', + m : 'a minute', + mm : '%d minutes', + h : 'an hour', + hh : '%d hours', + d : 'a day', + dd : '%d days', + M : 'a month', + MM : '%d months', + y : 'a year', + yy : '%d years' + }; + + function relativeTime (number, withoutSuffix, string, isFuture) { + var output = this._relativeTime[string]; + return (isFunction(output)) ? + output(number, withoutSuffix, string, isFuture) : + output.replace(/%d/i, number); + } + + function pastFuture (diff, output) { + var format = this._relativeTime[diff > 0 ? 'future' : 'past']; + return isFunction(format) ? format(output) : format.replace(/%s/i, output); + } + + var aliases = {}; + + function addUnitAlias (unit, shorthand) { + var lowerCase = unit.toLowerCase(); + aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit; + } + + function normalizeUnits(units) { + return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined; + } + + function normalizeObjectUnits(inputObject) { + var normalizedInput = {}, + normalizedProp, + prop; + + for (prop in inputObject) { + if (hasOwnProp(inputObject, prop)) { + normalizedProp = normalizeUnits(prop); + if (normalizedProp) { + normalizedInput[normalizedProp] = inputObject[prop]; + } + } + } + + return normalizedInput; + } + + var priorities = {}; + + function addUnitPriority(unit, priority) { + priorities[unit] = priority; + } + + function getPrioritizedUnits(unitsObj) { + var units = []; + for (var u in unitsObj) { + units.push({unit: u, priority: priorities[u]}); + } + units.sort(function (a, b) { + return a.priority - b.priority; + }); + return units; + } + + function zeroFill(number, targetLength, forceSign) { + var absNumber = '' + Math.abs(number), + zerosToFill = targetLength - absNumber.length, + sign = number >= 0; + return (sign ? (forceSign ? '+' : '') : '-') + + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber; + } + + var 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; + + var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g; + + var formatFunctions = {}; + + var formatTokenFunctions = {}; + + // token: 'M' + // padded: ['MM', 2] + // ordinal: 'Mo' + // callback: function () { this.month() + 1 } + function addFormatToken (token, padded, ordinal, callback) { + var func = callback; + if (typeof callback === 'string') { + func = function () { + return this[callback](); + }; + } + if (token) { + formatTokenFunctions[token] = func; + } + if (padded) { + formatTokenFunctions[padded[0]] = function () { + return zeroFill(func.apply(this, arguments), padded[1], padded[2]); + }; + } + if (ordinal) { + formatTokenFunctions[ordinal] = function () { + return this.localeData().ordinal(func.apply(this, arguments), token); + }; + } + } + + function removeFormattingTokens(input) { + if (input.match(/\[[\s\S]/)) { + return input.replace(/^\[|\]$/g, ''); + } + return input.replace(/\\/g, ''); + } + + function makeFormatFunction(format) { + var array = format.match(formattingTokens), i, length; + + for (i = 0, length = array.length; i < length; i++) { + if (formatTokenFunctions[array[i]]) { + array[i] = formatTokenFunctions[array[i]]; + } else { + array[i] = removeFormattingTokens(array[i]); + } + } + + return function (mom) { + var output = '', i; + for (i = 0; i < length; i++) { + output += isFunction(array[i]) ? array[i].call(mom, format) : array[i]; + } + return output; + }; + } + + // format date using native date object + function formatMoment(m, format) { + if (!m.isValid()) { + return m.localeData().invalidDate(); + } + + format = expandFormat(format, m.localeData()); + formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format); + + return formatFunctions[format](m); + } + + function expandFormat(format, locale) { + var i = 5; + + function replaceLongDateFormatTokens(input) { + return locale.longDateFormat(input) || input; + } + + localFormattingTokens.lastIndex = 0; + while (i >= 0 && localFormattingTokens.test(format)) { + format = format.replace(localFormattingTokens, replaceLongDateFormatTokens); + localFormattingTokens.lastIndex = 0; + i -= 1; + } + + return format; + } + + var match1 = /\d/; // 0 - 9 + var match2 = /\d\d/; // 00 - 99 + var match3 = /\d{3}/; // 000 - 999 + var match4 = /\d{4}/; // 0000 - 9999 + var match6 = /[+-]?\d{6}/; // -999999 - 999999 + var match1to2 = /\d\d?/; // 0 - 99 + var match3to4 = /\d\d\d\d?/; // 999 - 9999 + var match5to6 = /\d\d\d\d\d\d?/; // 99999 - 999999 + var match1to3 = /\d{1,3}/; // 0 - 999 + var match1to4 = /\d{1,4}/; // 0 - 9999 + var match1to6 = /[+-]?\d{1,6}/; // -999999 - 999999 + + var matchUnsigned = /\d+/; // 0 - inf + var matchSigned = /[+-]?\d+/; // -inf - inf + + var matchOffset = /Z|[+-]\d\d:?\d\d/gi; // +00:00 -00:00 +0000 -0000 or Z + var matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z + + var matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123 + + // any word (or two) characters or numbers including two/three word month in arabic. + // includes scottish gaelic two word and hyphenated months + var matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i; + + var regexes = {}; + + function addRegexToken (token, regex, strictRegex) { + regexes[token] = isFunction(regex) ? regex : function (isStrict, localeData) { + return (isStrict && strictRegex) ? strictRegex : regex; + }; + } + + function getParseRegexForToken (token, config) { + if (!hasOwnProp(regexes, token)) { + return new RegExp(unescapeFormat(token)); + } + + return regexes[token](config._strict, config._locale); + } + + // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript + function unescapeFormat(s) { + return regexEscape(s.replace('\\', '').replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (matched, p1, p2, p3, p4) { + return p1 || p2 || p3 || p4; + })); + } + + function regexEscape(s) { + return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); + } + + var tokens = {}; + + function addParseToken (token, callback) { + var i, func = callback; + if (typeof token === 'string') { + token = [token]; + } + if (isNumber(callback)) { + func = function (input, array) { + array[callback] = toInt(input); + }; + } + for (i = 0; i < token.length; i++) { + tokens[token[i]] = func; + } + } + + function addWeekParseToken (token, callback) { + addParseToken(token, function (input, array, config, token) { + config._w = config._w || {}; + callback(input, config._w, config, token); + }); + } + + function addTimeToArrayFromToken(token, input, config) { + if (input != null && hasOwnProp(tokens, token)) { + tokens[token](input, config._a, config, token); + } + } + + var YEAR = 0; + var MONTH = 1; + var DATE = 2; + var HOUR = 3; + var MINUTE = 4; + var SECOND = 5; + var MILLISECOND = 6; + var WEEK = 7; + var WEEKDAY = 8; + + // FORMATTING + + addFormatToken('Y', 0, 0, function () { + var y = this.year(); + return y <= 9999 ? '' + y : '+' + y; + }); + + addFormatToken(0, ['YY', 2], 0, function () { + return this.year() % 100; + }); + + addFormatToken(0, ['YYYY', 4], 0, 'year'); + addFormatToken(0, ['YYYYY', 5], 0, 'year'); + addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); + + // ALIASES + + addUnitAlias('year', 'y'); + + // PRIORITIES + + addUnitPriority('year', 1); + + // PARSING + + addRegexToken('Y', matchSigned); + addRegexToken('YY', match1to2, match2); + addRegexToken('YYYY', match1to4, match4); + addRegexToken('YYYYY', match1to6, match6); + addRegexToken('YYYYYY', match1to6, match6); + + addParseToken(['YYYYY', 'YYYYYY'], YEAR); + addParseToken('YYYY', function (input, array) { + array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); + }); + addParseToken('YY', function (input, array) { + array[YEAR] = hooks.parseTwoDigitYear(input); + }); + addParseToken('Y', function (input, array) { + array[YEAR] = parseInt(input, 10); + }); + + // HELPERS + + function daysInYear(year) { + return isLeapYear(year) ? 366 : 365; + } + + function isLeapYear(year) { + return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0; + } + + // HOOKS + + hooks.parseTwoDigitYear = function (input) { + return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); + }; + + // MOMENTS + + var getSetYear = makeGetSet('FullYear', true); + + function getIsLeapYear () { + return isLeapYear(this.year()); + } + + function makeGetSet (unit, keepTime) { + return function (value) { + if (value != null) { + set$1(this, unit, value); + hooks.updateOffset(this, keepTime); + return this; + } else { + return get(this, unit); + } + }; + } + + function get (mom, unit) { + return mom.isValid() ? + mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN; + } + + function set$1 (mom, unit, value) { + if (mom.isValid() && !isNaN(value)) { + if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month())); + } + else { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value); + } + } + } + + // MOMENTS + + function stringGet (units) { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](); + } + return this; + } + + + function stringSet (units, value) { + if (typeof units === 'object') { + units = normalizeObjectUnits(units); + var prioritized = getPrioritizedUnits(units); + for (var i = 0; i < prioritized.length; i++) { + this[prioritized[i].unit](units[prioritized[i].unit]); + } + } else { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](value); + } + } + return this; + } + + function mod(n, x) { + return ((n % x) + x) % x; + } + + var indexOf; + + if (Array.prototype.indexOf) { + indexOf = Array.prototype.indexOf; + } else { + indexOf = function (o) { + // I know + var i; + for (i = 0; i < this.length; ++i) { + if (this[i] === o) { + return i; + } + } + return -1; + }; + } + + function daysInMonth(year, month) { + if (isNaN(year) || isNaN(month)) { + return NaN; + } + var modMonth = mod(month, 12); + year += (month - modMonth) / 12; + return modMonth === 1 ? (isLeapYear(year) ? 29 : 28) : (31 - modMonth % 7 % 2); + } + + // FORMATTING + + addFormatToken('M', ['MM', 2], 'Mo', function () { + return this.month() + 1; + }); + + addFormatToken('MMM', 0, 0, function (format) { + return this.localeData().monthsShort(this, format); + }); + + addFormatToken('MMMM', 0, 0, function (format) { + return this.localeData().months(this, format); + }); + + // ALIASES + + addUnitAlias('month', 'M'); + + // PRIORITY + + addUnitPriority('month', 8); + + // PARSING + + addRegexToken('M', match1to2); + addRegexToken('MM', match1to2, match2); + addRegexToken('MMM', function (isStrict, locale) { + return locale.monthsShortRegex(isStrict); + }); + addRegexToken('MMMM', function (isStrict, locale) { + return locale.monthsRegex(isStrict); + }); + + addParseToken(['M', 'MM'], function (input, array) { + array[MONTH] = toInt(input) - 1; + }); + + addParseToken(['MMM', 'MMMM'], function (input, array, config, token) { + var month = config._locale.monthsParse(input, token, config._strict); + // if we didn't find a month name, mark the date as invalid. + if (month != null) { + array[MONTH] = month; + } else { + getParsingFlags(config).invalidMonth = input; + } + }); + + // LOCALES + + var MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/; + var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'); + function localeMonths (m, format) { + if (!m) { + return isArray(this._months) ? this._months : + this._months['standalone']; + } + return isArray(this._months) ? this._months[m.month()] : + this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? 'format' : 'standalone'][m.month()]; + } + + var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'); + function localeMonthsShort (m, format) { + if (!m) { + return isArray(this._monthsShort) ? this._monthsShort : + this._monthsShort['standalone']; + } + return isArray(this._monthsShort) ? this._monthsShort[m.month()] : + this._monthsShort[MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][m.month()]; + } + + function handleStrictParse(monthName, format, strict) { + var i, ii, mom, llc = monthName.toLocaleLowerCase(); + if (!this._monthsParse) { + // this is not used + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + for (i = 0; i < 12; ++i) { + mom = createUTC([2000, i]); + this._shortMonthsParse[i] = this.monthsShort(mom, '').toLocaleLowerCase(); + this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } + } + + function localeMonthsParse (monthName, format, strict) { + var i, mom, regex; + + if (this._monthsParseExact) { + return handleStrictParse.call(this, monthName, format, strict); + } + + if (!this._monthsParse) { + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + } + + // TODO: add sorting + // Sorting makes sure if one month (or abbr) is a prefix of another + // see sorting in computeMonthsParse + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + if (strict && !this._longMonthsParse[i]) { + this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i'); + this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i'); + } + if (!strict && !this._monthsParse[i]) { + regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); + this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) { + return i; + } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) { + return i; + } else if (!strict && this._monthsParse[i].test(monthName)) { + return i; + } + } + } + + // MOMENTS + + function setMonth (mom, value) { + var dayOfMonth; + + if (!mom.isValid()) { + // No op + return mom; + } + + if (typeof value === 'string') { + if (/^\d+$/.test(value)) { + value = toInt(value); + } else { + value = mom.localeData().monthsParse(value); + // TODO: Another silent failure? + if (!isNumber(value)) { + return mom; + } + } + } + + dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value)); + mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth); + return mom; + } + + function getSetMonth (value) { + if (value != null) { + setMonth(this, value); + hooks.updateOffset(this, true); + return this; + } else { + return get(this, 'Month'); + } + } + + function getDaysInMonth () { + return daysInMonth(this.year(), this.month()); + } + + var defaultMonthsShortRegex = matchWord; + function monthsShortRegex (isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsShortStrictRegex; + } else { + return this._monthsShortRegex; + } + } else { + if (!hasOwnProp(this, '_monthsShortRegex')) { + this._monthsShortRegex = defaultMonthsShortRegex; + } + return this._monthsShortStrictRegex && isStrict ? + this._monthsShortStrictRegex : this._monthsShortRegex; + } + } + + var defaultMonthsRegex = matchWord; + function monthsRegex (isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsStrictRegex; + } else { + return this._monthsRegex; + } + } else { + if (!hasOwnProp(this, '_monthsRegex')) { + this._monthsRegex = defaultMonthsRegex; + } + return this._monthsStrictRegex && isStrict ? + this._monthsStrictRegex : this._monthsRegex; + } + } + + function computeMonthsParse () { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var shortPieces = [], longPieces = [], mixedPieces = [], + i, mom; + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + shortPieces.push(this.monthsShort(mom, '')); + longPieces.push(this.months(mom, '')); + mixedPieces.push(this.months(mom, '')); + mixedPieces.push(this.monthsShort(mom, '')); + } + // Sorting makes sure if one month (or abbr) is a prefix of another it + // will match the longer piece. + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + for (i = 0; i < 12; i++) { + shortPieces[i] = regexEscape(shortPieces[i]); + longPieces[i] = regexEscape(longPieces[i]); + } + for (i = 0; i < 24; i++) { + mixedPieces[i] = regexEscape(mixedPieces[i]); + } + + this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._monthsShortRegex = this._monthsRegex; + this._monthsStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i'); + this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i'); + } + + function createDate (y, m, d, h, M, s, ms) { + // can't just apply() to create a date: + // https://stackoverflow.com/q/181348 + var date; + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + date = new Date(y + 400, m, d, h, M, s, ms); + if (isFinite(date.getFullYear())) { + date.setFullYear(y); + } + } else { + date = new Date(y, m, d, h, M, s, ms); + } + + return date; + } + + function createUTCDate (y) { + var date; + // the Date.UTC function remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + var args = Array.prototype.slice.call(arguments); + // preserve leap years using a full 400 year cycle, then reset + args[0] = y + 400; + date = new Date(Date.UTC.apply(null, args)); + if (isFinite(date.getUTCFullYear())) { + date.setUTCFullYear(y); + } + } else { + date = new Date(Date.UTC.apply(null, arguments)); + } + + return date; + } + + // start-of-first-week - start-of-year + function firstWeekOffset(year, dow, doy) { + var // first-week day -- which january is always in the first week (4 for iso, 1 for other) + fwd = 7 + dow - doy, + // first-week day local weekday -- which local weekday is fwd + fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7; + + return -fwdlw + fwd - 1; + } + + // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday + function dayOfYearFromWeeks(year, week, weekday, dow, doy) { + var localWeekday = (7 + weekday - dow) % 7, + weekOffset = firstWeekOffset(year, dow, doy), + dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset, + resYear, resDayOfYear; + + if (dayOfYear <= 0) { + resYear = year - 1; + resDayOfYear = daysInYear(resYear) + dayOfYear; + } else if (dayOfYear > daysInYear(year)) { + resYear = year + 1; + resDayOfYear = dayOfYear - daysInYear(year); + } else { + resYear = year; + resDayOfYear = dayOfYear; + } + + return { + year: resYear, + dayOfYear: resDayOfYear + }; + } + + function weekOfYear(mom, dow, doy) { + var weekOffset = firstWeekOffset(mom.year(), dow, doy), + week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1, + resWeek, resYear; + + if (week < 1) { + resYear = mom.year() - 1; + resWeek = week + weeksInYear(resYear, dow, doy); + } else if (week > weeksInYear(mom.year(), dow, doy)) { + resWeek = week - weeksInYear(mom.year(), dow, doy); + resYear = mom.year() + 1; + } else { + resYear = mom.year(); + resWeek = week; + } + + return { + week: resWeek, + year: resYear + }; + } + + function weeksInYear(year, dow, doy) { + var weekOffset = firstWeekOffset(year, dow, doy), + weekOffsetNext = firstWeekOffset(year + 1, dow, doy); + return (daysInYear(year) - weekOffset + weekOffsetNext) / 7; + } + + // FORMATTING + + addFormatToken('w', ['ww', 2], 'wo', 'week'); + addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek'); + + // ALIASES + + addUnitAlias('week', 'w'); + addUnitAlias('isoWeek', 'W'); + + // PRIORITIES + + addUnitPriority('week', 5); + addUnitPriority('isoWeek', 5); + + // PARSING + + addRegexToken('w', match1to2); + addRegexToken('ww', match1to2, match2); + addRegexToken('W', match1to2); + addRegexToken('WW', match1to2, match2); + + addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) { + week[token.substr(0, 1)] = toInt(input); + }); + + // HELPERS + + // LOCALES + + function localeWeek (mom) { + return weekOfYear(mom, this._week.dow, this._week.doy).week; + } + + var defaultLocaleWeek = { + dow : 0, // Sunday is the first day of the week. + doy : 6 // The week that contains Jan 6th is the first week of the year. + }; + + function localeFirstDayOfWeek () { + return this._week.dow; + } + + function localeFirstDayOfYear () { + return this._week.doy; + } + + // MOMENTS + + function getSetWeek (input) { + var week = this.localeData().week(this); + return input == null ? week : this.add((input - week) * 7, 'd'); + } + + function getSetISOWeek (input) { + var week = weekOfYear(this, 1, 4).week; + return input == null ? week : this.add((input - week) * 7, 'd'); + } + + // FORMATTING + + addFormatToken('d', 0, 'do', 'day'); + + addFormatToken('dd', 0, 0, function (format) { + return this.localeData().weekdaysMin(this, format); + }); + + addFormatToken('ddd', 0, 0, function (format) { + return this.localeData().weekdaysShort(this, format); + }); + + addFormatToken('dddd', 0, 0, function (format) { + return this.localeData().weekdays(this, format); + }); + + addFormatToken('e', 0, 0, 'weekday'); + addFormatToken('E', 0, 0, 'isoWeekday'); + + // ALIASES + + addUnitAlias('day', 'd'); + addUnitAlias('weekday', 'e'); + addUnitAlias('isoWeekday', 'E'); + + // PRIORITY + addUnitPriority('day', 11); + addUnitPriority('weekday', 11); + addUnitPriority('isoWeekday', 11); + + // PARSING + + addRegexToken('d', match1to2); + addRegexToken('e', match1to2); + addRegexToken('E', match1to2); + addRegexToken('dd', function (isStrict, locale) { + return locale.weekdaysMinRegex(isStrict); + }); + addRegexToken('ddd', function (isStrict, locale) { + return locale.weekdaysShortRegex(isStrict); + }); + addRegexToken('dddd', function (isStrict, locale) { + return locale.weekdaysRegex(isStrict); + }); + + addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) { + var weekday = config._locale.weekdaysParse(input, token, config._strict); + // if we didn't get a weekday name, mark the date as invalid + if (weekday != null) { + week.d = weekday; + } else { + getParsingFlags(config).invalidWeekday = input; + } + }); + + addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) { + week[token] = toInt(input); + }); + + // HELPERS + + function parseWeekday(input, locale) { + if (typeof input !== 'string') { + return input; + } + + if (!isNaN(input)) { + return parseInt(input, 10); + } + + input = locale.weekdaysParse(input); + if (typeof input === 'number') { + return input; + } + + return null; + } + + function parseIsoWeekday(input, locale) { + if (typeof input === 'string') { + return locale.weekdaysParse(input) % 7 || 7; + } + return isNaN(input) ? null : input; + } + + // LOCALES + function shiftWeekdays (ws, n) { + return ws.slice(n, 7).concat(ws.slice(0, n)); + } + + var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'); + function localeWeekdays (m, format) { + var weekdays = isArray(this._weekdays) ? this._weekdays : + this._weekdays[(m && m !== true && this._weekdays.isFormat.test(format)) ? 'format' : 'standalone']; + return (m === true) ? shiftWeekdays(weekdays, this._week.dow) + : (m) ? weekdays[m.day()] : weekdays; + } + + var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'); + function localeWeekdaysShort (m) { + return (m === true) ? shiftWeekdays(this._weekdaysShort, this._week.dow) + : (m) ? this._weekdaysShort[m.day()] : this._weekdaysShort; + } + + var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'); + function localeWeekdaysMin (m) { + return (m === true) ? shiftWeekdays(this._weekdaysMin, this._week.dow) + : (m) ? this._weekdaysMin[m.day()] : this._weekdaysMin; + } + + function handleStrictParse$1(weekdayName, format, strict) { + var i, ii, mom, llc = weekdayName.toLocaleLowerCase(); + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._shortWeekdaysParse = []; + this._minWeekdaysParse = []; + + for (i = 0; i < 7; ++i) { + mom = createUTC([2000, 1]).day(i); + this._minWeekdaysParse[i] = this.weekdaysMin(mom, '').toLocaleLowerCase(); + this._shortWeekdaysParse[i] = this.weekdaysShort(mom, '').toLocaleLowerCase(); + this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } + } + + function localeWeekdaysParse (weekdayName, format, strict) { + var i, mom, regex; + + if (this._weekdaysParseExact) { + return handleStrictParse$1.call(this, weekdayName, format, strict); + } + + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._minWeekdaysParse = []; + this._shortWeekdaysParse = []; + this._fullWeekdaysParse = []; + } + + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + + mom = createUTC([2000, 1]).day(i); + if (strict && !this._fullWeekdaysParse[i]) { + this._fullWeekdaysParse[i] = new RegExp('^' + this.weekdays(mom, '').replace('.', '\\.?') + '$', 'i'); + this._shortWeekdaysParse[i] = new RegExp('^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$', 'i'); + this._minWeekdaysParse[i] = new RegExp('^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$', 'i'); + } + if (!this._weekdaysParse[i]) { + regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, ''); + this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (strict && format === 'dddd' && this._fullWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (strict && format === 'ddd' && this._shortWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (strict && format === 'dd' && this._minWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (!strict && this._weekdaysParse[i].test(weekdayName)) { + return i; + } + } + } + + // MOMENTS + + function getSetDayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); + if (input != null) { + input = parseWeekday(input, this.localeData()); + return this.add(input - day, 'd'); + } else { + return day; + } + } + + function getSetLocaleDayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; + return input == null ? weekday : this.add(input - weekday, 'd'); + } + + function getSetISODayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + + // behaves the same as moment#day except + // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) + // as a setter, sunday should belong to the previous week. + + if (input != null) { + var weekday = parseIsoWeekday(input, this.localeData()); + return this.day(this.day() % 7 ? weekday : weekday - 7); + } else { + return this.day() || 7; + } + } + + var defaultWeekdaysRegex = matchWord; + function weekdaysRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysStrictRegex; + } else { + return this._weekdaysRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysRegex')) { + this._weekdaysRegex = defaultWeekdaysRegex; + } + return this._weekdaysStrictRegex && isStrict ? + this._weekdaysStrictRegex : this._weekdaysRegex; + } + } + + var defaultWeekdaysShortRegex = matchWord; + function weekdaysShortRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysShortStrictRegex; + } else { + return this._weekdaysShortRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysShortRegex')) { + this._weekdaysShortRegex = defaultWeekdaysShortRegex; + } + return this._weekdaysShortStrictRegex && isStrict ? + this._weekdaysShortStrictRegex : this._weekdaysShortRegex; + } + } + + var defaultWeekdaysMinRegex = matchWord; + function weekdaysMinRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysMinStrictRegex; + } else { + return this._weekdaysMinRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysMinRegex')) { + this._weekdaysMinRegex = defaultWeekdaysMinRegex; + } + return this._weekdaysMinStrictRegex && isStrict ? + this._weekdaysMinStrictRegex : this._weekdaysMinRegex; + } + } + + + function computeWeekdaysParse () { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [], + i, mom, minp, shortp, longp; + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, 1]).day(i); + minp = this.weekdaysMin(mom, ''); + shortp = this.weekdaysShort(mom, ''); + longp = this.weekdays(mom, ''); + minPieces.push(minp); + shortPieces.push(shortp); + longPieces.push(longp); + mixedPieces.push(minp); + mixedPieces.push(shortp); + mixedPieces.push(longp); + } + // Sorting makes sure if one weekday (or abbr) is a prefix of another it + // will match the longer piece. + minPieces.sort(cmpLenRev); + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + for (i = 0; i < 7; i++) { + shortPieces[i] = regexEscape(shortPieces[i]); + longPieces[i] = regexEscape(longPieces[i]); + mixedPieces[i] = regexEscape(mixedPieces[i]); + } + + this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._weekdaysShortRegex = this._weekdaysRegex; + this._weekdaysMinRegex = this._weekdaysRegex; + + this._weekdaysStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i'); + this._weekdaysShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i'); + this._weekdaysMinStrictRegex = new RegExp('^(' + minPieces.join('|') + ')', 'i'); + } + + // FORMATTING + + function hFormat() { + return this.hours() % 12 || 12; + } + + function kFormat() { + return this.hours() || 24; + } + + addFormatToken('H', ['HH', 2], 0, 'hour'); + addFormatToken('h', ['hh', 2], 0, hFormat); + addFormatToken('k', ['kk', 2], 0, kFormat); + + addFormatToken('hmm', 0, 0, function () { + return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2); + }); + + addFormatToken('hmmss', 0, 0, function () { + return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2); + }); + + addFormatToken('Hmm', 0, 0, function () { + return '' + this.hours() + zeroFill(this.minutes(), 2); + }); + + addFormatToken('Hmmss', 0, 0, function () { + return '' + this.hours() + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2); + }); + + function meridiem (token, lowercase) { + addFormatToken(token, 0, 0, function () { + return this.localeData().meridiem(this.hours(), this.minutes(), lowercase); + }); + } + + meridiem('a', true); + meridiem('A', false); + + // ALIASES + + addUnitAlias('hour', 'h'); + + // PRIORITY + addUnitPriority('hour', 13); + + // PARSING + + function matchMeridiem (isStrict, locale) { + return locale._meridiemParse; + } + + addRegexToken('a', matchMeridiem); + addRegexToken('A', matchMeridiem); + addRegexToken('H', match1to2); + addRegexToken('h', match1to2); + addRegexToken('k', match1to2); + addRegexToken('HH', match1to2, match2); + addRegexToken('hh', match1to2, match2); + addRegexToken('kk', match1to2, match2); + + addRegexToken('hmm', match3to4); + addRegexToken('hmmss', match5to6); + addRegexToken('Hmm', match3to4); + addRegexToken('Hmmss', match5to6); + + addParseToken(['H', 'HH'], HOUR); + addParseToken(['k', 'kk'], function (input, array, config) { + var kInput = toInt(input); + array[HOUR] = kInput === 24 ? 0 : kInput; + }); + addParseToken(['a', 'A'], function (input, array, config) { + config._isPm = config._locale.isPM(input); + config._meridiem = input; + }); + addParseToken(['h', 'hh'], function (input, array, config) { + array[HOUR] = toInt(input); + getParsingFlags(config).bigHour = true; + }); + addParseToken('hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); + getParsingFlags(config).bigHour = true; + }); + addParseToken('hmmss', function (input, array, config) { + var pos1 = input.length - 4; + var pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); + getParsingFlags(config).bigHour = true; + }); + addParseToken('Hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); + }); + addParseToken('Hmmss', function (input, array, config) { + var pos1 = input.length - 4; + var pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); + }); + + // LOCALES + + function localeIsPM (input) { + // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays + // Using charAt should be more compatible. + return ((input + '').toLowerCase().charAt(0) === 'p'); + } + + var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i; + function localeMeridiem (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'pm' : 'PM'; + } else { + return isLower ? 'am' : 'AM'; + } + } + + + // MOMENTS + + // Setting the hour should keep the time, because the user explicitly + // specified which hour they want. So trying to maintain the same hour (in + // a new timezone) makes sense. Adding/subtracting hours does not follow + // this rule. + var getSetHour = makeGetSet('Hours', true); + + var baseConfig = { + calendar: defaultCalendar, + longDateFormat: defaultLongDateFormat, + invalidDate: defaultInvalidDate, + ordinal: defaultOrdinal, + dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse, + relativeTime: defaultRelativeTime, + + months: defaultLocaleMonths, + monthsShort: defaultLocaleMonthsShort, + + week: defaultLocaleWeek, + + weekdays: defaultLocaleWeekdays, + weekdaysMin: defaultLocaleWeekdaysMin, + weekdaysShort: defaultLocaleWeekdaysShort, + + meridiemParse: defaultLocaleMeridiemParse + }; + + // internal storage for locale config files + var locales = {}; + var localeFamilies = {}; + var globalLocale; + + function normalizeLocale(key) { + return key ? key.toLowerCase().replace('_', '-') : key; + } + + // pick the locale from the array + // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each + // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root + function chooseLocale(names) { + var i = 0, j, next, locale, split; + + while (i < names.length) { + split = normalizeLocale(names[i]).split('-'); + j = split.length; + next = normalizeLocale(names[i + 1]); + next = next ? next.split('-') : null; + while (j > 0) { + locale = loadLocale(split.slice(0, j).join('-')); + if (locale) { + return locale; + } + if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) { + //the next array item is better than a shallower substring of this one + break; + } + j--; + } + i++; + } + return globalLocale; + } + + function loadLocale(name) { + var oldLocale = null; + // TODO: Find a better way to register and load all the locales in Node + if (!locales[name] && ('object' !== 'undefined') && + module && module.exports) { + try { + oldLocale = globalLocale._abbr; + var aliasedRequire = commonjsRequire; + aliasedRequire('./locale/' + name); + getSetGlobalLocale(oldLocale); + } catch (e) {} + } + return locales[name]; + } + + // This function will load locale and then set the global locale. If + // no arguments are passed in, it will simply return the current global + // locale key. + function getSetGlobalLocale (key, values) { + var data; + if (key) { + if (isUndefined(values)) { + data = getLocale(key); + } + else { + data = defineLocale(key, values); + } + + if (data) { + // moment.duration._locale = moment._locale = data; + globalLocale = data; + } + else { + if ((typeof console !== 'undefined') && console.warn) { + //warn user if arguments are passed but the locale could not be set + console.warn('Locale ' + key + ' not found. Did you forget to load it?'); + } + } + } + + return globalLocale._abbr; + } + + function defineLocale (name, config) { + if (config !== null) { + var locale, parentConfig = baseConfig; + config.abbr = name; + if (locales[name] != null) { + deprecateSimple('defineLocaleOverride', + 'use moment.updateLocale(localeName, config) to change ' + + 'an existing locale. moment.defineLocale(localeName, ' + + 'config) should only be used for creating a new locale ' + + 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'); + parentConfig = locales[name]._config; + } else if (config.parentLocale != null) { + if (locales[config.parentLocale] != null) { + parentConfig = locales[config.parentLocale]._config; + } else { + locale = loadLocale(config.parentLocale); + if (locale != null) { + parentConfig = locale._config; + } else { + if (!localeFamilies[config.parentLocale]) { + localeFamilies[config.parentLocale] = []; + } + localeFamilies[config.parentLocale].push({ + name: name, + config: config + }); + return null; + } + } + } + locales[name] = new Locale(mergeConfigs(parentConfig, config)); + + if (localeFamilies[name]) { + localeFamilies[name].forEach(function (x) { + defineLocale(x.name, x.config); + }); + } + + // backwards compat for now: also set the locale + // make sure we set the locale AFTER all child locales have been + // created, so we won't end up with the child locale set. + getSetGlobalLocale(name); + + + return locales[name]; + } else { + // useful for testing + delete locales[name]; + return null; + } + } + + function updateLocale(name, config) { + if (config != null) { + var locale, tmpLocale, parentConfig = baseConfig; + // MERGE + tmpLocale = loadLocale(name); + if (tmpLocale != null) { + parentConfig = tmpLocale._config; + } + config = mergeConfigs(parentConfig, config); + locale = new Locale(config); + locale.parentLocale = locales[name]; + locales[name] = locale; + + // backwards compat for now: also set the locale + getSetGlobalLocale(name); + } else { + // pass null for config to unupdate, useful for tests + if (locales[name] != null) { + if (locales[name].parentLocale != null) { + locales[name] = locales[name].parentLocale; + } else if (locales[name] != null) { + delete locales[name]; + } + } + } + return locales[name]; + } + + // returns locale data + function getLocale (key) { + var locale; + + if (key && key._locale && key._locale._abbr) { + key = key._locale._abbr; + } + + if (!key) { + return globalLocale; + } + + if (!isArray(key)) { + //short-circuit everything else + locale = loadLocale(key); + if (locale) { + return locale; + } + key = [key]; + } + + return chooseLocale(key); + } + + function listLocales() { + return keys(locales); + } + + function checkOverflow (m) { + var overflow; + var a = m._a; + + if (a && getParsingFlags(m).overflow === -2) { + overflow = + a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : + a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : + a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR : + a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : + a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : + a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : + -1; + + if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) { + overflow = DATE; + } + if (getParsingFlags(m)._overflowWeeks && overflow === -1) { + overflow = WEEK; + } + if (getParsingFlags(m)._overflowWeekday && overflow === -1) { + overflow = WEEKDAY; + } + + getParsingFlags(m).overflow = overflow; + } + + return m; + } + + // Pick the first defined of two or three arguments. + function defaults(a, b, c) { + if (a != null) { + return a; + } + if (b != null) { + return b; + } + return c; + } + + function currentDateArray(config) { + // hooks is actually the exported moment object + var nowValue = new Date(hooks.now()); + if (config._useUTC) { + return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()]; + } + return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()]; + } + + // convert an array to a date. + // the array should mirror the parameters below + // note: all values past the year are optional and will default to the lowest possible value. + // [year, month, day , hour, minute, second, millisecond] + function configFromArray (config) { + var i, date, input = [], currentDate, expectedWeekday, yearToUse; + + if (config._d) { + return; + } + + currentDate = currentDateArray(config); + + //compute day of the year from weeks and weekdays + if (config._w && config._a[DATE] == null && config._a[MONTH] == null) { + dayOfYearFromWeekInfo(config); + } + + //if the day of the year is set, figure out what it is + if (config._dayOfYear != null) { + yearToUse = defaults(config._a[YEAR], currentDate[YEAR]); + + if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) { + getParsingFlags(config)._overflowDayOfYear = true; + } + + date = createUTCDate(yearToUse, 0, config._dayOfYear); + config._a[MONTH] = date.getUTCMonth(); + config._a[DATE] = date.getUTCDate(); + } + + // Default to current date. + // * if no year, month, day of month are given, default to today + // * if day of month is given, default month and year + // * if month is given, default only year + // * if year is given, don't default anything + for (i = 0; i < 3 && config._a[i] == null; ++i) { + config._a[i] = input[i] = currentDate[i]; + } + + // Zero out whatever was not defaulted, including time + for (; i < 7; i++) { + config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i]; + } + + // Check for 24:00:00.000 + if (config._a[HOUR] === 24 && + config._a[MINUTE] === 0 && + config._a[SECOND] === 0 && + config._a[MILLISECOND] === 0) { + config._nextDay = true; + config._a[HOUR] = 0; + } + + config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input); + expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay(); + + // Apply timezone offset from input. The actual utcOffset can be changed + // with parseZone. + if (config._tzm != null) { + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + } + + if (config._nextDay) { + config._a[HOUR] = 24; + } + + // check for mismatching day of week + if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) { + getParsingFlags(config).weekdayMismatch = true; + } + } + + function dayOfYearFromWeekInfo(config) { + var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow; + + w = config._w; + if (w.GG != null || w.W != null || w.E != null) { + dow = 1; + doy = 4; + + // TODO: We need to take the current isoWeekYear, but that depends on + // how we interpret now (local, utc, fixed offset). So create + // a now version of current config (take local/utc/offset flags, and + // create now). + weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year); + week = defaults(w.W, 1); + weekday = defaults(w.E, 1); + if (weekday < 1 || weekday > 7) { + weekdayOverflow = true; + } + } else { + dow = config._locale._week.dow; + doy = config._locale._week.doy; + + var curWeek = weekOfYear(createLocal(), dow, doy); + + weekYear = defaults(w.gg, config._a[YEAR], curWeek.year); + + // Default to current week. + week = defaults(w.w, curWeek.week); + + if (w.d != null) { + // weekday -- low day numbers are considered next week + weekday = w.d; + if (weekday < 0 || weekday > 6) { + weekdayOverflow = true; + } + } else if (w.e != null) { + // local weekday -- counting starts from beginning of week + weekday = w.e + dow; + if (w.e < 0 || w.e > 6) { + weekdayOverflow = true; + } + } else { + // default to beginning of week + weekday = dow; + } + } + if (week < 1 || week > weeksInYear(weekYear, dow, doy)) { + getParsingFlags(config)._overflowWeeks = true; + } else if (weekdayOverflow != null) { + getParsingFlags(config)._overflowWeekday = true; + } else { + temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy); + config._a[YEAR] = temp.year; + config._dayOfYear = temp.dayOfYear; + } + } + + // iso 8601 regex + // 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) + var 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)?)?$/; + var 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)?)?$/; + + var tzRegex = /Z|[+-]\d\d(?::?\d\d)?/; + + var isoDates = [ + ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], + ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], + ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], + ['GGGG-[W]WW', /\d{4}-W\d\d/, false], + ['YYYY-DDD', /\d{4}-\d{3}/], + ['YYYY-MM', /\d{4}-\d\d/, false], + ['YYYYYYMMDD', /[+-]\d{10}/], + ['YYYYMMDD', /\d{8}/], + // YYYYMM is NOT allowed by the standard + ['GGGG[W]WWE', /\d{4}W\d{3}/], + ['GGGG[W]WW', /\d{4}W\d{2}/, false], + ['YYYYDDD', /\d{7}/] + ]; + + // iso time formats and regexes + var isoTimes = [ + ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], + ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], + ['HH:mm:ss', /\d\d:\d\d:\d\d/], + ['HH:mm', /\d\d:\d\d/], + ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], + ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], + ['HHmmss', /\d\d\d\d\d\d/], + ['HHmm', /\d\d\d\d/], + ['HH', /\d\d/] + ]; + + var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i; + + // date from iso format + function configFromISO(config) { + var i, l, + string = config._i, + match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), + allowTime, dateFormat, timeFormat, tzFormat; + + if (match) { + getParsingFlags(config).iso = true; + + for (i = 0, l = isoDates.length; i < l; i++) { + if (isoDates[i][1].exec(match[1])) { + dateFormat = isoDates[i][0]; + allowTime = isoDates[i][2] !== false; + break; + } + } + if (dateFormat == null) { + config._isValid = false; + return; + } + if (match[3]) { + for (i = 0, l = isoTimes.length; i < l; i++) { + if (isoTimes[i][1].exec(match[3])) { + // match[2] should be 'T' or space + timeFormat = (match[2] || ' ') + isoTimes[i][0]; + break; + } + } + if (timeFormat == null) { + config._isValid = false; + return; + } + } + if (!allowTime && timeFormat != null) { + config._isValid = false; + return; + } + if (match[4]) { + if (tzRegex.exec(match[4])) { + tzFormat = 'Z'; + } else { + config._isValid = false; + return; + } + } + config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); + configFromStringAndFormat(config); + } else { + config._isValid = false; + } + } + + // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 + var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/; + + function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) { + var result = [ + untruncateYear(yearStr), + defaultLocaleMonthsShort.indexOf(monthStr), + parseInt(dayStr, 10), + parseInt(hourStr, 10), + parseInt(minuteStr, 10) + ]; + + if (secondStr) { + result.push(parseInt(secondStr, 10)); + } + + return result; + } + + function untruncateYear(yearStr) { + var year = parseInt(yearStr, 10); + if (year <= 49) { + return 2000 + year; + } else if (year <= 999) { + return 1900 + year; + } + return year; + } + + function preprocessRFC2822(s) { + // Remove comments and folding whitespace and replace multiple-spaces with a single space + return s.replace(/\([^)]*\)|[\n\t]/g, ' ').replace(/(\s\s+)/g, ' ').replace(/^\s\s*/, '').replace(/\s\s*$/, ''); + } + + function checkWeekday(weekdayStr, parsedInput, config) { + if (weekdayStr) { + // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check. + var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), + weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay(); + if (weekdayProvided !== weekdayActual) { + getParsingFlags(config).weekdayMismatch = true; + config._isValid = false; + return false; + } + } + return true; + } + + var obsOffsets = { + UT: 0, + GMT: 0, + EDT: -4 * 60, + EST: -5 * 60, + CDT: -5 * 60, + CST: -6 * 60, + MDT: -6 * 60, + MST: -7 * 60, + PDT: -7 * 60, + PST: -8 * 60 + }; + + function calculateOffset(obsOffset, militaryOffset, numOffset) { + if (obsOffset) { + return obsOffsets[obsOffset]; + } else if (militaryOffset) { + // the only allowed military tz is Z + return 0; + } else { + var hm = parseInt(numOffset, 10); + var m = hm % 100, h = (hm - m) / 100; + return h * 60 + m; + } + } + + // date and time from ref 2822 format + function configFromRFC2822(config) { + var match = rfc2822.exec(preprocessRFC2822(config._i)); + if (match) { + var parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]); + if (!checkWeekday(match[1], parsedArray, config)) { + return; + } + + config._a = parsedArray; + config._tzm = calculateOffset(match[8], match[9], match[10]); + + config._d = createUTCDate.apply(null, config._a); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + + getParsingFlags(config).rfc2822 = true; + } else { + config._isValid = false; + } + } + + // date from iso format or fallback + function configFromString(config) { + var matched = aspNetJsonRegex.exec(config._i); + + if (matched !== null) { + config._d = new Date(+matched[1]); + return; + } + + configFromISO(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + configFromRFC2822(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + // Final attempt, use Input Fallback + hooks.createFromInputFallback(config); + } + + hooks.createFromInputFallback = deprecate( + 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + + 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + + 'discouraged and will be removed in an upcoming major release. Please refer to ' + + 'http://momentjs.com/guides/#/warnings/js-date/ for more info.', + function (config) { + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); + } + ); + + // constant that refers to the ISO standard + hooks.ISO_8601 = function () {}; + + // constant that refers to the RFC 2822 form + hooks.RFC_2822 = function () {}; + + // date from string and format string + function configFromStringAndFormat(config) { + // TODO: Move this to another part of the creation flow to prevent circular deps + if (config._f === hooks.ISO_8601) { + configFromISO(config); + return; + } + if (config._f === hooks.RFC_2822) { + configFromRFC2822(config); + return; + } + config._a = []; + getParsingFlags(config).empty = true; + + // This array is used to make a Date, either with `new Date` or `Date.UTC` + var string = '' + config._i, + i, parsedInput, tokens, token, skipped, + stringLength = string.length, + totalParsedInputLength = 0; + + tokens = expandFormat(config._f, config._locale).match(formattingTokens) || []; + + for (i = 0; i < tokens.length; i++) { + token = tokens[i]; + parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0]; + // console.log('token', token, 'parsedInput', parsedInput, + // 'regex', getParseRegexForToken(token, config)); + if (parsedInput) { + skipped = string.substr(0, string.indexOf(parsedInput)); + if (skipped.length > 0) { + getParsingFlags(config).unusedInput.push(skipped); + } + string = string.slice(string.indexOf(parsedInput) + parsedInput.length); + totalParsedInputLength += parsedInput.length; + } + // don't parse if it's not a known token + if (formatTokenFunctions[token]) { + if (parsedInput) { + getParsingFlags(config).empty = false; + } + else { + getParsingFlags(config).unusedTokens.push(token); + } + addTimeToArrayFromToken(token, parsedInput, config); + } + else if (config._strict && !parsedInput) { + getParsingFlags(config).unusedTokens.push(token); + } + } + + // add remaining unparsed input length to the string + getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength; + if (string.length > 0) { + getParsingFlags(config).unusedInput.push(string); + } + + // clear _12h flag if hour is <= 12 + if (config._a[HOUR] <= 12 && + getParsingFlags(config).bigHour === true && + config._a[HOUR] > 0) { + getParsingFlags(config).bigHour = undefined; + } + + getParsingFlags(config).parsedDateParts = config._a.slice(0); + getParsingFlags(config).meridiem = config._meridiem; + // handle meridiem + config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem); + + configFromArray(config); + checkOverflow(config); + } + + + function meridiemFixWrap (locale, hour, meridiem) { + var isPm; + + if (meridiem == null) { + // nothing to do + return hour; + } + if (locale.meridiemHour != null) { + return locale.meridiemHour(hour, meridiem); + } else if (locale.isPM != null) { + // Fallback + isPm = locale.isPM(meridiem); + if (isPm && hour < 12) { + hour += 12; + } + if (!isPm && hour === 12) { + hour = 0; + } + return hour; + } else { + // this is not supposed to happen + return hour; + } + } + + // date from string and array of format strings + function configFromStringAndArray(config) { + var tempConfig, + bestMoment, + + scoreToBeat, + i, + currentScore; + + if (config._f.length === 0) { + getParsingFlags(config).invalidFormat = true; + config._d = new Date(NaN); + return; + } + + for (i = 0; i < config._f.length; i++) { + currentScore = 0; + tempConfig = copyConfig({}, config); + if (config._useUTC != null) { + tempConfig._useUTC = config._useUTC; + } + tempConfig._f = config._f[i]; + configFromStringAndFormat(tempConfig); + + if (!isValid(tempConfig)) { + continue; + } + + // if there is any input that was not parsed add a penalty for that format + currentScore += getParsingFlags(tempConfig).charsLeftOver; + + //or tokens + currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10; + + getParsingFlags(tempConfig).score = currentScore; + + if (scoreToBeat == null || currentScore < scoreToBeat) { + scoreToBeat = currentScore; + bestMoment = tempConfig; + } + } + + extend(config, bestMoment || tempConfig); + } + + function configFromObject(config) { + if (config._d) { + return; + } + + var i = normalizeObjectUnits(config._i); + config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) { + return obj && parseInt(obj, 10); + }); + + configFromArray(config); + } + + function createFromConfig (config) { + var res = new Moment(checkOverflow(prepareConfig(config))); + if (res._nextDay) { + // Adding is smart enough around DST + res.add(1, 'd'); + res._nextDay = undefined; + } + + return res; + } + + function prepareConfig (config) { + var input = config._i, + format = config._f; + + config._locale = config._locale || getLocale(config._l); + + if (input === null || (format === undefined && input === '')) { + return createInvalid({nullInput: true}); + } + + if (typeof input === 'string') { + config._i = input = config._locale.preparse(input); + } + + if (isMoment(input)) { + return new Moment(checkOverflow(input)); + } else if (isDate(input)) { + config._d = input; + } else if (isArray(format)) { + configFromStringAndArray(config); + } else if (format) { + configFromStringAndFormat(config); + } else { + configFromInput(config); + } + + if (!isValid(config)) { + config._d = null; + } + + return config; + } + + function configFromInput(config) { + var input = config._i; + if (isUndefined(input)) { + config._d = new Date(hooks.now()); + } else if (isDate(input)) { + config._d = new Date(input.valueOf()); + } else if (typeof input === 'string') { + configFromString(config); + } else if (isArray(input)) { + config._a = map(input.slice(0), function (obj) { + return parseInt(obj, 10); + }); + configFromArray(config); + } else if (isObject(input)) { + configFromObject(config); + } else if (isNumber(input)) { + // from milliseconds + config._d = new Date(input); + } else { + hooks.createFromInputFallback(config); + } + } + + function createLocalOrUTC (input, format, locale, strict, isUTC) { + var c = {}; + + if (locale === true || locale === false) { + strict = locale; + locale = undefined; + } + + if ((isObject(input) && isObjectEmpty(input)) || + (isArray(input) && input.length === 0)) { + input = undefined; + } + // object construction must be done this way. + // https://github.com/moment/moment/issues/1423 + c._isAMomentObject = true; + c._useUTC = c._isUTC = isUTC; + c._l = locale; + c._i = input; + c._f = format; + c._strict = strict; + + return createFromConfig(c); + } + + function createLocal (input, format, locale, strict) { + return createLocalOrUTC(input, format, locale, strict, false); + } + + var prototypeMin = deprecate( + 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other < this ? this : other; + } else { + return createInvalid(); + } + } + ); + + var prototypeMax = deprecate( + 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other > this ? this : other; + } else { + return createInvalid(); + } + } + ); + + // Pick a moment m from moments so that m[fn](other) is true for all + // other. This relies on the function fn to be transitive. + // + // moments should either be an array of moment objects or an array, whose + // first element is an array of moment objects. + function pickBy(fn, moments) { + var res, i; + if (moments.length === 1 && isArray(moments[0])) { + moments = moments[0]; + } + if (!moments.length) { + return createLocal(); + } + res = moments[0]; + for (i = 1; i < moments.length; ++i) { + if (!moments[i].isValid() || moments[i][fn](res)) { + res = moments[i]; + } + } + return res; + } + + // TODO: Use [].sort instead? + function min () { + var args = [].slice.call(arguments, 0); + + return pickBy('isBefore', args); + } + + function max () { + var args = [].slice.call(arguments, 0); + + return pickBy('isAfter', args); + } + + var now = function () { + return Date.now ? Date.now() : +(new Date()); + }; + + var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond']; + + function isDurationValid(m) { + for (var key in m) { + if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) { + return false; + } + } + + var unitHasDecimal = false; + for (var i = 0; i < ordering.length; ++i) { + if (m[ordering[i]]) { + if (unitHasDecimal) { + return false; // only allow non-integers for smallest unit + } + if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) { + unitHasDecimal = true; + } + } + } + + return true; + } + + function isValid$1() { + return this._isValid; + } + + function createInvalid$1() { + return createDuration(NaN); + } + + function Duration (duration) { + var normalizedInput = normalizeObjectUnits(duration), + years = normalizedInput.year || 0, + quarters = normalizedInput.quarter || 0, + months = normalizedInput.month || 0, + weeks = normalizedInput.week || normalizedInput.isoWeek || 0, + days = normalizedInput.day || 0, + hours = normalizedInput.hour || 0, + minutes = normalizedInput.minute || 0, + seconds = normalizedInput.second || 0, + milliseconds = normalizedInput.millisecond || 0; + + this._isValid = isDurationValid(normalizedInput); + + // representation for dateAddRemove + this._milliseconds = +milliseconds + + seconds * 1e3 + // 1000 + minutes * 6e4 + // 1000 * 60 + hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978 + // Because of dateAddRemove treats 24 hours as different from a + // day when working around DST, we need to store them separately + this._days = +days + + weeks * 7; + // It is impossible to translate months into days without knowing + // which months you are are talking about, so we have to store + // it separately. + this._months = +months + + quarters * 3 + + years * 12; + + this._data = {}; + + this._locale = getLocale(); + + this._bubble(); + } + + function isDuration (obj) { + return obj instanceof Duration; + } + + function absRound (number) { + if (number < 0) { + return Math.round(-1 * number) * -1; + } else { + return Math.round(number); + } + } + + // FORMATTING + + function offset (token, separator) { + addFormatToken(token, 0, 0, function () { + var offset = this.utcOffset(); + var sign = '+'; + if (offset < 0) { + offset = -offset; + sign = '-'; + } + return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2); + }); + } + + offset('Z', ':'); + offset('ZZ', ''); + + // PARSING + + addRegexToken('Z', matchShortOffset); + addRegexToken('ZZ', matchShortOffset); + addParseToken(['Z', 'ZZ'], function (input, array, config) { + config._useUTC = true; + config._tzm = offsetFromString(matchShortOffset, input); + }); + + // HELPERS + + // timezone chunker + // '+10:00' > ['10', '00'] + // '-1530' > ['-15', '30'] + var chunkOffset = /([\+\-]|\d\d)/gi; + + function offsetFromString(matcher, string) { + var matches = (string || '').match(matcher); + + if (matches === null) { + return null; + } + + var chunk = matches[matches.length - 1] || []; + var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0]; + var minutes = +(parts[1] * 60) + toInt(parts[2]); + + return minutes === 0 ? + 0 : + parts[0] === '+' ? minutes : -minutes; + } + + // Return a moment from input, that is local/utc/zone equivalent to model. + function cloneWithOffset(input, model) { + var res, diff; + if (model._isUTC) { + res = model.clone(); + diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf(); + // Use low-level api, because this fn is low-level api. + res._d.setTime(res._d.valueOf() + diff); + hooks.updateOffset(res, false); + return res; + } else { + return createLocal(input).local(); + } + } + + function getDateOffset (m) { + // On Firefox.24 Date#getTimezoneOffset returns a floating point. + // https://github.com/moment/moment/pull/1871 + return -Math.round(m._d.getTimezoneOffset() / 15) * 15; + } + + // HOOKS + + // This function will be called whenever a moment is mutated. + // It is intended to keep the offset in sync with the timezone. + hooks.updateOffset = function () {}; + + // MOMENTS + + // keepLocalTime = true means only change the timezone, without + // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> + // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset + // +0200, so we adjust the time as needed, to be valid. + // + // Keeping the time actually adds/subtracts (one hour) + // from the actual represented time. That is why we call updateOffset + // a second time. In case it wants us to change the offset again + // _changeInProgress == true case, then we have to adjust, because + // there is no such time in the given timezone. + function getSetOffset (input, keepLocalTime, keepMinutes) { + var offset = this._offset || 0, + localAdjust; + if (!this.isValid()) { + return input != null ? this : NaN; + } + if (input != null) { + if (typeof input === 'string') { + input = offsetFromString(matchShortOffset, input); + if (input === null) { + return this; + } + } else if (Math.abs(input) < 16 && !keepMinutes) { + input = input * 60; + } + if (!this._isUTC && keepLocalTime) { + localAdjust = getDateOffset(this); + } + this._offset = input; + this._isUTC = true; + if (localAdjust != null) { + this.add(localAdjust, 'm'); + } + if (offset !== input) { + if (!keepLocalTime || this._changeInProgress) { + addSubtract(this, createDuration(input - offset, 'm'), 1, false); + } else if (!this._changeInProgress) { + this._changeInProgress = true; + hooks.updateOffset(this, true); + this._changeInProgress = null; + } + } + return this; + } else { + return this._isUTC ? offset : getDateOffset(this); + } + } + + function getSetZone (input, keepLocalTime) { + if (input != null) { + if (typeof input !== 'string') { + input = -input; + } + + this.utcOffset(input, keepLocalTime); + + return this; + } else { + return -this.utcOffset(); + } + } + + function setOffsetToUTC (keepLocalTime) { + return this.utcOffset(0, keepLocalTime); + } + + function setOffsetToLocal (keepLocalTime) { + if (this._isUTC) { + this.utcOffset(0, keepLocalTime); + this._isUTC = false; + + if (keepLocalTime) { + this.subtract(getDateOffset(this), 'm'); + } + } + return this; + } + + function setOffsetToParsedOffset () { + if (this._tzm != null) { + this.utcOffset(this._tzm, false, true); + } else if (typeof this._i === 'string') { + var tZone = offsetFromString(matchOffset, this._i); + if (tZone != null) { + this.utcOffset(tZone); + } + else { + this.utcOffset(0, true); + } + } + return this; + } + + function hasAlignedHourOffset (input) { + if (!this.isValid()) { + return false; + } + input = input ? createLocal(input).utcOffset() : 0; + + return (this.utcOffset() - input) % 60 === 0; + } + + function isDaylightSavingTime () { + return ( + this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset() + ); + } + + function isDaylightSavingTimeShifted () { + if (!isUndefined(this._isDSTShifted)) { + return this._isDSTShifted; + } + + var c = {}; + + copyConfig(c, this); + c = prepareConfig(c); + + if (c._a) { + var other = c._isUTC ? createUTC(c._a) : createLocal(c._a); + this._isDSTShifted = this.isValid() && + compareArrays(c._a, other.toArray()) > 0; + } else { + this._isDSTShifted = false; + } + + return this._isDSTShifted; + } + + function isLocal () { + return this.isValid() ? !this._isUTC : false; + } + + function isUtcOffset () { + return this.isValid() ? this._isUTC : false; + } + + function isUtc () { + return this.isValid() ? this._isUTC && this._offset === 0 : false; + } + + // ASP.NET json date format regex + var aspNetRegex = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/; + + // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html + // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere + // and further modified to allow for strings containing both week and day + var isoRegex = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; + + function createDuration (input, key) { + var duration = input, + // matching against regexp is expensive, do it on demand + match = null, + sign, + ret, + diffRes; + + if (isDuration(input)) { + duration = { + ms : input._milliseconds, + d : input._days, + M : input._months + }; + } else if (isNumber(input)) { + duration = {}; + if (key) { + duration[key] = input; + } else { + duration.milliseconds = input; + } + } else if (!!(match = aspNetRegex.exec(input))) { + sign = (match[1] === '-') ? -1 : 1; + duration = { + y : 0, + d : toInt(match[DATE]) * sign, + h : toInt(match[HOUR]) * sign, + m : toInt(match[MINUTE]) * sign, + s : toInt(match[SECOND]) * sign, + ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match + }; + } else if (!!(match = isoRegex.exec(input))) { + sign = (match[1] === '-') ? -1 : 1; + duration = { + y : parseIso(match[2], sign), + M : parseIso(match[3], sign), + w : parseIso(match[4], sign), + d : parseIso(match[5], sign), + h : parseIso(match[6], sign), + m : parseIso(match[7], sign), + s : parseIso(match[8], sign) + }; + } else if (duration == null) {// checks for null or undefined + duration = {}; + } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) { + diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to)); + + duration = {}; + duration.ms = diffRes.milliseconds; + duration.M = diffRes.months; + } + + ret = new Duration(duration); + + if (isDuration(input) && hasOwnProp(input, '_locale')) { + ret._locale = input._locale; + } + + return ret; + } + + createDuration.fn = Duration.prototype; + createDuration.invalid = createInvalid$1; + + function parseIso (inp, sign) { + // We'd normally use ~~inp for this, but unfortunately it also + // converts floats to ints. + // inp may be undefined, so careful calling replace on it. + var res = inp && parseFloat(inp.replace(',', '.')); + // apply sign while we're at it + return (isNaN(res) ? 0 : res) * sign; + } + + function positiveMomentsDifference(base, other) { + var res = {}; + + res.months = other.month() - base.month() + + (other.year() - base.year()) * 12; + if (base.clone().add(res.months, 'M').isAfter(other)) { + --res.months; + } + + res.milliseconds = +other - +(base.clone().add(res.months, 'M')); + + return res; + } + + function momentsDifference(base, other) { + var res; + if (!(base.isValid() && other.isValid())) { + return {milliseconds: 0, months: 0}; + } + + other = cloneWithOffset(other, base); + if (base.isBefore(other)) { + res = positiveMomentsDifference(base, other); + } else { + res = positiveMomentsDifference(other, base); + res.milliseconds = -res.milliseconds; + res.months = -res.months; + } + + return res; + } + + // TODO: remove 'name' arg after deprecation is removed + function createAdder(direction, name) { + return function (val, period) { + var dur, tmp; + //invert the arguments, but complain about it + if (period !== null && !isNaN(+period)) { + deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' + + 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'); + tmp = val; val = period; period = tmp; + } + + val = typeof val === 'string' ? +val : val; + dur = createDuration(val, period); + addSubtract(this, dur, direction); + return this; + }; + } + + function addSubtract (mom, duration, isAdding, updateOffset) { + var milliseconds = duration._milliseconds, + days = absRound(duration._days), + months = absRound(duration._months); + + if (!mom.isValid()) { + // No op + return; + } + + updateOffset = updateOffset == null ? true : updateOffset; + + if (months) { + setMonth(mom, get(mom, 'Month') + months * isAdding); + } + if (days) { + set$1(mom, 'Date', get(mom, 'Date') + days * isAdding); + } + if (milliseconds) { + mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); + } + if (updateOffset) { + hooks.updateOffset(mom, days || months); + } + } + + var add = createAdder(1, 'add'); + var subtract = createAdder(-1, 'subtract'); + + function getCalendarFormat(myMoment, now) { + var diff = myMoment.diff(now, 'days', true); + return diff < -6 ? 'sameElse' : + diff < -1 ? 'lastWeek' : + diff < 0 ? 'lastDay' : + diff < 1 ? 'sameDay' : + diff < 2 ? 'nextDay' : + diff < 7 ? 'nextWeek' : 'sameElse'; + } + + function calendar$1 (time, formats) { + // We want to compare the start of today, vs this. + // Getting start-of-today depends on whether we're local/utc/offset or not. + var now = time || createLocal(), + sod = cloneWithOffset(now, this).startOf('day'), + format = hooks.calendarFormat(this, sod) || 'sameElse'; + + var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]); + + return this.format(output || this.localeData().calendar(format, this, createLocal(now))); + } + + function clone () { + return new Moment(this); + } + + function isAfter (input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() > localInput.valueOf(); + } else { + return localInput.valueOf() < this.clone().startOf(units).valueOf(); + } + } + + function isBefore (input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() < localInput.valueOf(); + } else { + return this.clone().endOf(units).valueOf() < localInput.valueOf(); + } + } + + function isBetween (from, to, units, inclusivity) { + var localFrom = isMoment(from) ? from : createLocal(from), + localTo = isMoment(to) ? to : createLocal(to); + if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) { + return false; + } + inclusivity = inclusivity || '()'; + return (inclusivity[0] === '(' ? this.isAfter(localFrom, units) : !this.isBefore(localFrom, units)) && + (inclusivity[1] === ')' ? this.isBefore(localTo, units) : !this.isAfter(localTo, units)); + } + + function isSame (input, units) { + var localInput = isMoment(input) ? input : createLocal(input), + inputMs; + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() === localInput.valueOf(); + } else { + inputMs = localInput.valueOf(); + return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf(); + } + } + + function isSameOrAfter (input, units) { + return this.isSame(input, units) || this.isAfter(input, units); + } + + function isSameOrBefore (input, units) { + return this.isSame(input, units) || this.isBefore(input, units); + } + + function diff (input, units, asFloat) { + var that, + zoneDelta, + output; + + if (!this.isValid()) { + return NaN; + } + + that = cloneWithOffset(input, this); + + if (!that.isValid()) { + return NaN; + } + + zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4; + + units = normalizeUnits(units); + + switch (units) { + case 'year': output = monthDiff(this, that) / 12; break; + case 'month': output = monthDiff(this, that); break; + case 'quarter': output = monthDiff(this, that) / 3; break; + case 'second': output = (this - that) / 1e3; break; // 1000 + case 'minute': output = (this - that) / 6e4; break; // 1000 * 60 + case 'hour': output = (this - that) / 36e5; break; // 1000 * 60 * 60 + case 'day': output = (this - that - zoneDelta) / 864e5; break; // 1000 * 60 * 60 * 24, negate dst + case 'week': output = (this - that - zoneDelta) / 6048e5; break; // 1000 * 60 * 60 * 24 * 7, negate dst + default: output = this - that; + } + + return asFloat ? output : absFloor(output); + } + + function monthDiff (a, b) { + // difference in months + var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()), + // b is in (anchor - 1 month, anchor + 1 month) + anchor = a.clone().add(wholeMonthDiff, 'months'), + anchor2, adjust; + + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor2 - anchor); + } + + //check for negative zero, return zero if negative zero + return -(wholeMonthDiff + adjust) || 0; + } + + hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ'; + hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]'; + + function toString () { + return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); + } + + function toISOString(keepOffset) { + if (!this.isValid()) { + return null; + } + var utc = keepOffset !== true; + var m = utc ? this.clone().utc() : this; + if (m.year() < 0 || m.year() > 9999) { + return formatMoment(m, utc ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'); + } + if (isFunction(Date.prototype.toISOString)) { + // native implementation is ~50x faster, use it when we can + if (utc) { + return this.toDate().toISOString(); + } else { + return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).toISOString().replace('Z', formatMoment(m, 'Z')); + } + } + return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'); + } + + /** + * Return a human readable representation of a moment that can + * also be evaluated to get a new moment which is the same + * + * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects + */ + function inspect () { + if (!this.isValid()) { + return 'moment.invalid(/* ' + this._i + ' */)'; + } + var func = 'moment'; + var zone = ''; + if (!this.isLocal()) { + func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone'; + zone = 'Z'; + } + var prefix = '[' + func + '("]'; + var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY'; + var datetime = '-MM-DD[T]HH:mm:ss.SSS'; + var suffix = zone + '[")]'; + + return this.format(prefix + year + datetime + suffix); + } + + function format (inputString) { + if (!inputString) { + inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat; + } + var output = formatMoment(this, inputString); + return this.localeData().postformat(output); + } + + function from (time, withoutSuffix) { + if (this.isValid() && + ((isMoment(time) && time.isValid()) || + createLocal(time).isValid())) { + return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } + } + + function fromNow (withoutSuffix) { + return this.from(createLocal(), withoutSuffix); + } + + function to (time, withoutSuffix) { + if (this.isValid() && + ((isMoment(time) && time.isValid()) || + createLocal(time).isValid())) { + return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } + } + + function toNow (withoutSuffix) { + return this.to(createLocal(), withoutSuffix); + } + + // If passed a locale key, it will set the locale for this + // instance. Otherwise, it will return the locale configuration + // variables for this instance. + function locale (key) { + var newLocaleData; + + if (key === undefined) { + return this._locale._abbr; + } else { + newLocaleData = getLocale(key); + if (newLocaleData != null) { + this._locale = newLocaleData; + } + return this; + } + } + + var lang = deprecate( + 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', + function (key) { + if (key === undefined) { + return this.localeData(); + } else { + return this.locale(key); + } + } + ); + + function localeData () { + return this._locale; + } + + var MS_PER_SECOND = 1000; + var MS_PER_MINUTE = 60 * MS_PER_SECOND; + var MS_PER_HOUR = 60 * MS_PER_MINUTE; + var MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR; + + // actual modulo - handles negative numbers (for dates before 1970): + function mod$1(dividend, divisor) { + return (dividend % divisor + divisor) % divisor; + } + + function localStartOfDate(y, m, d) { + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return new Date(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return new Date(y, m, d).valueOf(); + } + } + + function utcStartOfDate(y, m, d) { + // Date.UTC remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return Date.UTC(y, m, d); + } + } + + function startOf (units) { + var time; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year(), 0, 1); + break; + case 'quarter': + time = startOfDate(this.year(), this.month() - this.month() % 3, 1); + break; + case 'month': + time = startOfDate(this.year(), this.month(), 1); + break; + case 'week': + time = startOfDate(this.year(), this.month(), this.date() - this.weekday()); + break; + case 'isoWeek': + time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1)); + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date()); + break; + case 'hour': + time = this._d.valueOf(); + time -= mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR); + break; + case 'minute': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_MINUTE); + break; + case 'second': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_SECOND); + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; + } + + function endOf (units) { + var time; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year() + 1, 0, 1) - 1; + break; + case 'quarter': + time = startOfDate(this.year(), this.month() - this.month() % 3 + 3, 1) - 1; + break; + case 'month': + time = startOfDate(this.year(), this.month() + 1, 1) - 1; + break; + case 'week': + time = startOfDate(this.year(), this.month(), this.date() - this.weekday() + 7) - 1; + break; + case 'isoWeek': + time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1; + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date() + 1) - 1; + break; + case 'hour': + time = this._d.valueOf(); + time += MS_PER_HOUR - mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR) - 1; + break; + case 'minute': + time = this._d.valueOf(); + time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1; + break; + case 'second': + time = this._d.valueOf(); + time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1; + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; + } + + function valueOf () { + return this._d.valueOf() - ((this._offset || 0) * 60000); + } + + function unix () { + return Math.floor(this.valueOf() / 1000); + } + + function toDate () { + return new Date(this.valueOf()); + } + + function toArray () { + var m = this; + return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()]; + } + + function toObject () { + var m = this; + return { + years: m.year(), + months: m.month(), + date: m.date(), + hours: m.hours(), + minutes: m.minutes(), + seconds: m.seconds(), + milliseconds: m.milliseconds() + }; + } + + function toJSON () { + // new Date(NaN).toJSON() === null + return this.isValid() ? this.toISOString() : null; + } + + function isValid$2 () { + return isValid(this); + } + + function parsingFlags () { + return extend({}, getParsingFlags(this)); + } + + function invalidAt () { + return getParsingFlags(this).overflow; + } + + function creationData() { + return { + input: this._i, + format: this._f, + locale: this._locale, + isUTC: this._isUTC, + strict: this._strict + }; + } + + // FORMATTING + + addFormatToken(0, ['gg', 2], 0, function () { + return this.weekYear() % 100; + }); + + addFormatToken(0, ['GG', 2], 0, function () { + return this.isoWeekYear() % 100; + }); + + function addWeekYearFormatToken (token, getter) { + addFormatToken(0, [token, token.length], 0, getter); + } + + addWeekYearFormatToken('gggg', 'weekYear'); + addWeekYearFormatToken('ggggg', 'weekYear'); + addWeekYearFormatToken('GGGG', 'isoWeekYear'); + addWeekYearFormatToken('GGGGG', 'isoWeekYear'); + + // ALIASES + + addUnitAlias('weekYear', 'gg'); + addUnitAlias('isoWeekYear', 'GG'); + + // PRIORITY + + addUnitPriority('weekYear', 1); + addUnitPriority('isoWeekYear', 1); + + + // PARSING + + addRegexToken('G', matchSigned); + addRegexToken('g', matchSigned); + addRegexToken('GG', match1to2, match2); + addRegexToken('gg', match1to2, match2); + addRegexToken('GGGG', match1to4, match4); + addRegexToken('gggg', match1to4, match4); + addRegexToken('GGGGG', match1to6, match6); + addRegexToken('ggggg', match1to6, match6); + + addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) { + week[token.substr(0, 2)] = toInt(input); + }); + + addWeekParseToken(['gg', 'GG'], function (input, week, config, token) { + week[token] = hooks.parseTwoDigitYear(input); + }); + + // MOMENTS + + function getSetWeekYear (input) { + return getSetWeekYearHelper.call(this, + input, + this.week(), + this.weekday(), + this.localeData()._week.dow, + this.localeData()._week.doy); + } + + function getSetISOWeekYear (input) { + return getSetWeekYearHelper.call(this, + input, this.isoWeek(), this.isoWeekday(), 1, 4); + } + + function getISOWeeksInYear () { + return weeksInYear(this.year(), 1, 4); + } + + function getWeeksInYear () { + var weekInfo = this.localeData()._week; + return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy); + } + + function getSetWeekYearHelper(input, week, weekday, dow, doy) { + var weeksTarget; + if (input == null) { + return weekOfYear(this, dow, doy).year; + } else { + weeksTarget = weeksInYear(input, dow, doy); + if (week > weeksTarget) { + week = weeksTarget; + } + return setWeekAll.call(this, input, week, weekday, dow, doy); + } + } + + function setWeekAll(weekYear, week, weekday, dow, doy) { + var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), + date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear); + + this.year(date.getUTCFullYear()); + this.month(date.getUTCMonth()); + this.date(date.getUTCDate()); + return this; + } + + // FORMATTING + + addFormatToken('Q', 0, 'Qo', 'quarter'); + + // ALIASES + + addUnitAlias('quarter', 'Q'); + + // PRIORITY + + addUnitPriority('quarter', 7); + + // PARSING + + addRegexToken('Q', match1); + addParseToken('Q', function (input, array) { + array[MONTH] = (toInt(input) - 1) * 3; + }); + + // MOMENTS + + function getSetQuarter (input) { + return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3); + } + + // FORMATTING + + addFormatToken('D', ['DD', 2], 'Do', 'date'); + + // ALIASES + + addUnitAlias('date', 'D'); + + // PRIORITY + addUnitPriority('date', 9); + + // PARSING + + addRegexToken('D', match1to2); + addRegexToken('DD', match1to2, match2); + addRegexToken('Do', function (isStrict, locale) { + // TODO: Remove "ordinalParse" fallback in next major release. + return isStrict ? + (locale._dayOfMonthOrdinalParse || locale._ordinalParse) : + locale._dayOfMonthOrdinalParseLenient; + }); + + addParseToken(['D', 'DD'], DATE); + addParseToken('Do', function (input, array) { + array[DATE] = toInt(input.match(match1to2)[0]); + }); + + // MOMENTS + + var getSetDayOfMonth = makeGetSet('Date', true); + + // FORMATTING + + addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear'); + + // ALIASES + + addUnitAlias('dayOfYear', 'DDD'); + + // PRIORITY + addUnitPriority('dayOfYear', 4); + + // PARSING + + addRegexToken('DDD', match1to3); + addRegexToken('DDDD', match3); + addParseToken(['DDD', 'DDDD'], function (input, array, config) { + config._dayOfYear = toInt(input); + }); + + // HELPERS + + // MOMENTS + + function getSetDayOfYear (input) { + var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1; + return input == null ? dayOfYear : this.add((input - dayOfYear), 'd'); + } + + // FORMATTING + + addFormatToken('m', ['mm', 2], 0, 'minute'); + + // ALIASES + + addUnitAlias('minute', 'm'); + + // PRIORITY + + addUnitPriority('minute', 14); + + // PARSING + + addRegexToken('m', match1to2); + addRegexToken('mm', match1to2, match2); + addParseToken(['m', 'mm'], MINUTE); + + // MOMENTS + + var getSetMinute = makeGetSet('Minutes', false); + + // FORMATTING + + addFormatToken('s', ['ss', 2], 0, 'second'); + + // ALIASES + + addUnitAlias('second', 's'); + + // PRIORITY + + addUnitPriority('second', 15); + + // PARSING + + addRegexToken('s', match1to2); + addRegexToken('ss', match1to2, match2); + addParseToken(['s', 'ss'], SECOND); + + // MOMENTS + + var getSetSecond = makeGetSet('Seconds', false); + + // FORMATTING + + addFormatToken('S', 0, 0, function () { + return ~~(this.millisecond() / 100); + }); + + addFormatToken(0, ['SS', 2], 0, function () { + return ~~(this.millisecond() / 10); + }); + + addFormatToken(0, ['SSS', 3], 0, 'millisecond'); + addFormatToken(0, ['SSSS', 4], 0, function () { + return this.millisecond() * 10; + }); + addFormatToken(0, ['SSSSS', 5], 0, function () { + return this.millisecond() * 100; + }); + addFormatToken(0, ['SSSSSS', 6], 0, function () { + return this.millisecond() * 1000; + }); + addFormatToken(0, ['SSSSSSS', 7], 0, function () { + return this.millisecond() * 10000; + }); + addFormatToken(0, ['SSSSSSSS', 8], 0, function () { + return this.millisecond() * 100000; + }); + addFormatToken(0, ['SSSSSSSSS', 9], 0, function () { + return this.millisecond() * 1000000; + }); + + + // ALIASES + + addUnitAlias('millisecond', 'ms'); + + // PRIORITY + + addUnitPriority('millisecond', 16); + + // PARSING + + addRegexToken('S', match1to3, match1); + addRegexToken('SS', match1to3, match2); + addRegexToken('SSS', match1to3, match3); + + var token; + for (token = 'SSSS'; token.length <= 9; token += 'S') { + addRegexToken(token, matchUnsigned); + } + + function parseMs(input, array) { + array[MILLISECOND] = toInt(('0.' + input) * 1000); + } + + for (token = 'S'; token.length <= 9; token += 'S') { + addParseToken(token, parseMs); + } + // MOMENTS + + var getSetMillisecond = makeGetSet('Milliseconds', false); + + // FORMATTING + + addFormatToken('z', 0, 0, 'zoneAbbr'); + addFormatToken('zz', 0, 0, 'zoneName'); + + // MOMENTS + + function getZoneAbbr () { + return this._isUTC ? 'UTC' : ''; + } + + function getZoneName () { + return this._isUTC ? 'Coordinated Universal Time' : ''; + } + + var proto = Moment.prototype; + + proto.add = add; + proto.calendar = calendar$1; + proto.clone = clone; + proto.diff = diff; + proto.endOf = endOf; + proto.format = format; + proto.from = from; + proto.fromNow = fromNow; + proto.to = to; + proto.toNow = toNow; + proto.get = stringGet; + proto.invalidAt = invalidAt; + proto.isAfter = isAfter; + proto.isBefore = isBefore; + proto.isBetween = isBetween; + proto.isSame = isSame; + proto.isSameOrAfter = isSameOrAfter; + proto.isSameOrBefore = isSameOrBefore; + proto.isValid = isValid$2; + proto.lang = lang; + proto.locale = locale; + proto.localeData = localeData; + proto.max = prototypeMax; + proto.min = prototypeMin; + proto.parsingFlags = parsingFlags; + proto.set = stringSet; + proto.startOf = startOf; + proto.subtract = subtract; + proto.toArray = toArray; + proto.toObject = toObject; + proto.toDate = toDate; + proto.toISOString = toISOString; + proto.inspect = inspect; + proto.toJSON = toJSON; + proto.toString = toString; + proto.unix = unix; + proto.valueOf = valueOf; + proto.creationData = creationData; + proto.year = getSetYear; + proto.isLeapYear = getIsLeapYear; + proto.weekYear = getSetWeekYear; + proto.isoWeekYear = getSetISOWeekYear; + proto.quarter = proto.quarters = getSetQuarter; + proto.month = getSetMonth; + proto.daysInMonth = getDaysInMonth; + proto.week = proto.weeks = getSetWeek; + proto.isoWeek = proto.isoWeeks = getSetISOWeek; + proto.weeksInYear = getWeeksInYear; + proto.isoWeeksInYear = getISOWeeksInYear; + proto.date = getSetDayOfMonth; + proto.day = proto.days = getSetDayOfWeek; + proto.weekday = getSetLocaleDayOfWeek; + proto.isoWeekday = getSetISODayOfWeek; + proto.dayOfYear = getSetDayOfYear; + proto.hour = proto.hours = getSetHour; + proto.minute = proto.minutes = getSetMinute; + proto.second = proto.seconds = getSetSecond; + proto.millisecond = proto.milliseconds = getSetMillisecond; + proto.utcOffset = getSetOffset; + proto.utc = setOffsetToUTC; + proto.local = setOffsetToLocal; + proto.parseZone = setOffsetToParsedOffset; + proto.hasAlignedHourOffset = hasAlignedHourOffset; + proto.isDST = isDaylightSavingTime; + proto.isLocal = isLocal; + proto.isUtcOffset = isUtcOffset; + proto.isUtc = isUtc; + proto.isUTC = isUtc; + proto.zoneAbbr = getZoneAbbr; + proto.zoneName = getZoneName; + proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth); + proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth); + proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear); + proto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone); + proto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted); + + function createUnix (input) { + return createLocal(input * 1000); + } + + function createInZone () { + return createLocal.apply(null, arguments).parseZone(); + } + + function preParsePostFormat (string) { + return string; + } + + var proto$1 = Locale.prototype; + + proto$1.calendar = calendar; + proto$1.longDateFormat = longDateFormat; + proto$1.invalidDate = invalidDate; + proto$1.ordinal = ordinal; + proto$1.preparse = preParsePostFormat; + proto$1.postformat = preParsePostFormat; + proto$1.relativeTime = relativeTime; + proto$1.pastFuture = pastFuture; + proto$1.set = set; + + proto$1.months = localeMonths; + proto$1.monthsShort = localeMonthsShort; + proto$1.monthsParse = localeMonthsParse; + proto$1.monthsRegex = monthsRegex; + proto$1.monthsShortRegex = monthsShortRegex; + proto$1.week = localeWeek; + proto$1.firstDayOfYear = localeFirstDayOfYear; + proto$1.firstDayOfWeek = localeFirstDayOfWeek; + + proto$1.weekdays = localeWeekdays; + proto$1.weekdaysMin = localeWeekdaysMin; + proto$1.weekdaysShort = localeWeekdaysShort; + proto$1.weekdaysParse = localeWeekdaysParse; + + proto$1.weekdaysRegex = weekdaysRegex; + proto$1.weekdaysShortRegex = weekdaysShortRegex; + proto$1.weekdaysMinRegex = weekdaysMinRegex; + + proto$1.isPM = localeIsPM; + proto$1.meridiem = localeMeridiem; + + function get$1 (format, index, field, setter) { + var locale = getLocale(); + var utc = createUTC().set(setter, index); + return locale[field](utc, format); + } + + function listMonthsImpl (format, index, field) { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + + if (index != null) { + return get$1(format, index, field, 'month'); + } + + var i; + var out = []; + for (i = 0; i < 12; i++) { + out[i] = get$1(format, i, field, 'month'); + } + return out; + } + + // () + // (5) + // (fmt, 5) + // (fmt) + // (true) + // (true, 5) + // (true, fmt, 5) + // (true, fmt) + function listWeekdaysImpl (localeSorted, format, index, field) { + if (typeof localeSorted === 'boolean') { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } else { + format = localeSorted; + index = format; + localeSorted = false; + + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } + + var locale = getLocale(), + shift = localeSorted ? locale._week.dow : 0; + + if (index != null) { + return get$1(format, (index + shift) % 7, field, 'day'); + } + + var i; + var out = []; + for (i = 0; i < 7; i++) { + out[i] = get$1(format, (i + shift) % 7, field, 'day'); + } + return out; + } + + function listMonths (format, index) { + return listMonthsImpl(format, index, 'months'); + } + + function listMonthsShort (format, index) { + return listMonthsImpl(format, index, 'monthsShort'); + } + + function listWeekdays (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdays'); + } + + function listWeekdaysShort (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort'); + } + + function listWeekdaysMin (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin'); + } + + getSetGlobalLocale('en', { + dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, + ordinal : function (number) { + var b = number % 10, + output = (toInt(number % 100 / 10) === 1) ? 'th' : + (b === 1) ? 'st' : + (b === 2) ? 'nd' : + (b === 3) ? 'rd' : 'th'; + return number + output; + } + }); + + // Side effect imports + + hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale); + hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale); + + var mathAbs = Math.abs; + + function abs () { + var data = this._data; + + this._milliseconds = mathAbs(this._milliseconds); + this._days = mathAbs(this._days); + this._months = mathAbs(this._months); + + data.milliseconds = mathAbs(data.milliseconds); + data.seconds = mathAbs(data.seconds); + data.minutes = mathAbs(data.minutes); + data.hours = mathAbs(data.hours); + data.months = mathAbs(data.months); + data.years = mathAbs(data.years); + + return this; + } + + function addSubtract$1 (duration, input, value, direction) { + var other = createDuration(input, value); + + duration._milliseconds += direction * other._milliseconds; + duration._days += direction * other._days; + duration._months += direction * other._months; + + return duration._bubble(); + } + + // supports only 2.0-style add(1, 's') or add(duration) + function add$1 (input, value) { + return addSubtract$1(this, input, value, 1); + } + + // supports only 2.0-style subtract(1, 's') or subtract(duration) + function subtract$1 (input, value) { + return addSubtract$1(this, input, value, -1); + } + + function absCeil (number) { + if (number < 0) { + return Math.floor(number); + } else { + return Math.ceil(number); + } + } + + function bubble () { + var milliseconds = this._milliseconds; + var days = this._days; + var months = this._months; + var data = this._data; + var seconds, minutes, hours, years, monthsFromDays; + + // if we have a mix of positive and negative values, bubble down first + // check: https://github.com/moment/moment/issues/2166 + if (!((milliseconds >= 0 && days >= 0 && months >= 0) || + (milliseconds <= 0 && days <= 0 && months <= 0))) { + milliseconds += absCeil(monthsToDays(months) + days) * 864e5; + days = 0; + months = 0; + } + + // The following code bubbles up values, see the tests for + // examples of what that means. + data.milliseconds = milliseconds % 1000; + + seconds = absFloor(milliseconds / 1000); + data.seconds = seconds % 60; + + minutes = absFloor(seconds / 60); + data.minutes = minutes % 60; + + hours = absFloor(minutes / 60); + data.hours = hours % 24; + + days += absFloor(hours / 24); + + // convert days to months + monthsFromDays = absFloor(daysToMonths(days)); + months += monthsFromDays; + days -= absCeil(monthsToDays(monthsFromDays)); + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + data.days = days; + data.months = months; + data.years = years; + + return this; + } + + function daysToMonths (days) { + // 400 years have 146097 days (taking into account leap year rules) + // 400 years have 12 months === 4800 + return days * 4800 / 146097; + } + + function monthsToDays (months) { + // the reverse of daysToMonths + return months * 146097 / 4800; + } + + function as (units) { + if (!this.isValid()) { + return NaN; + } + var days; + var months; + var milliseconds = this._milliseconds; + + units = normalizeUnits(units); + + if (units === 'month' || units === 'quarter' || units === 'year') { + days = this._days + milliseconds / 864e5; + months = this._months + daysToMonths(days); + switch (units) { + case 'month': return months; + case 'quarter': return months / 3; + case 'year': return months / 12; + } + } else { + // handle milliseconds separately because of floating point math errors (issue #1867) + days = this._days + Math.round(monthsToDays(this._months)); + switch (units) { + case 'week' : return days / 7 + milliseconds / 6048e5; + case 'day' : return days + milliseconds / 864e5; + case 'hour' : return days * 24 + milliseconds / 36e5; + case 'minute' : return days * 1440 + milliseconds / 6e4; + case 'second' : return days * 86400 + milliseconds / 1000; + // Math.floor prevents floating point math errors here + case 'millisecond': return Math.floor(days * 864e5) + milliseconds; + default: throw new Error('Unknown unit ' + units); + } + } + } + + // TODO: Use this.as('ms')? + function valueOf$1 () { + if (!this.isValid()) { + return NaN; + } + return ( + this._milliseconds + + this._days * 864e5 + + (this._months % 12) * 2592e6 + + toInt(this._months / 12) * 31536e6 + ); + } + + function makeAs (alias) { + return function () { + return this.as(alias); + }; + } + + var asMilliseconds = makeAs('ms'); + var asSeconds = makeAs('s'); + var asMinutes = makeAs('m'); + var asHours = makeAs('h'); + var asDays = makeAs('d'); + var asWeeks = makeAs('w'); + var asMonths = makeAs('M'); + var asQuarters = makeAs('Q'); + var asYears = makeAs('y'); + + function clone$1 () { + return createDuration(this); + } + + function get$2 (units) { + units = normalizeUnits(units); + return this.isValid() ? this[units + 's']() : NaN; + } + + function makeGetter(name) { + return function () { + return this.isValid() ? this._data[name] : NaN; + }; + } + + var milliseconds = makeGetter('milliseconds'); + var seconds = makeGetter('seconds'); + var minutes = makeGetter('minutes'); + var hours = makeGetter('hours'); + var days = makeGetter('days'); + var months = makeGetter('months'); + var years = makeGetter('years'); + + function weeks () { + return absFloor(this.days() / 7); + } + + var round = Math.round; + var thresholds = { + ss: 44, // a few seconds to seconds + s : 45, // seconds to minute + m : 45, // minutes to hour + h : 22, // hours to day + d : 26, // days to month + M : 11 // months to year + }; + + // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize + function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { + return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture); + } + + function relativeTime$1 (posNegDuration, withoutSuffix, locale) { + var duration = createDuration(posNegDuration).abs(); + var seconds = round(duration.as('s')); + var minutes = round(duration.as('m')); + var hours = round(duration.as('h')); + var days = round(duration.as('d')); + var months = round(duration.as('M')); + var years = round(duration.as('y')); + + var a = seconds <= thresholds.ss && ['s', seconds] || + seconds < thresholds.s && ['ss', seconds] || + minutes <= 1 && ['m'] || + minutes < thresholds.m && ['mm', minutes] || + hours <= 1 && ['h'] || + hours < thresholds.h && ['hh', hours] || + days <= 1 && ['d'] || + days < thresholds.d && ['dd', days] || + months <= 1 && ['M'] || + months < thresholds.M && ['MM', months] || + years <= 1 && ['y'] || ['yy', years]; + + a[2] = withoutSuffix; + a[3] = +posNegDuration > 0; + a[4] = locale; + return substituteTimeAgo.apply(null, a); + } + + // This function allows you to set the rounding function for relative time strings + function getSetRelativeTimeRounding (roundingFunction) { + if (roundingFunction === undefined) { + return round; + } + if (typeof(roundingFunction) === 'function') { + round = roundingFunction; + return true; + } + return false; + } + + // This function allows you to set a threshold for relative time strings + function getSetRelativeTimeThreshold (threshold, limit) { + if (thresholds[threshold] === undefined) { + return false; + } + if (limit === undefined) { + return thresholds[threshold]; + } + thresholds[threshold] = limit; + if (threshold === 's') { + thresholds.ss = limit - 1; + } + return true; + } + + function humanize (withSuffix) { + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var locale = this.localeData(); + var output = relativeTime$1(this, !withSuffix, locale); + + if (withSuffix) { + output = locale.pastFuture(+this, output); + } + + return locale.postformat(output); + } + + var abs$1 = Math.abs; + + function sign(x) { + return ((x > 0) - (x < 0)) || +x; + } + + function toISOString$1() { + // for ISO strings we do not use the normal bubbling rules: + // * milliseconds bubble up until they become hours + // * days do not bubble at all + // * months bubble up until they become years + // This is because there is no context-free conversion between hours and days + // (think of clock changes) + // and also not between days and months (28-31 days per month) + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var seconds = abs$1(this._milliseconds) / 1000; + var days = abs$1(this._days); + var months = abs$1(this._months); + var minutes, hours, years; + + // 3600 seconds -> 60 minutes -> 1 hour + minutes = absFloor(seconds / 60); + hours = absFloor(minutes / 60); + seconds %= 60; + minutes %= 60; + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + + // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js + var Y = years; + var M = months; + var D = days; + var h = hours; + var m = minutes; + var s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : ''; + var total = this.asSeconds(); + + if (!total) { + // this is the same as C#'s (Noda) and python (isodate)... + // but not other JS (goog.date) + return 'P0D'; + } + + var totalSign = total < 0 ? '-' : ''; + var ymSign = sign(this._months) !== sign(total) ? '-' : ''; + var daysSign = sign(this._days) !== sign(total) ? '-' : ''; + var hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : ''; + + return totalSign + 'P' + + (Y ? ymSign + Y + 'Y' : '') + + (M ? ymSign + M + 'M' : '') + + (D ? daysSign + D + 'D' : '') + + ((h || m || s) ? 'T' : '') + + (h ? hmsSign + h + 'H' : '') + + (m ? hmsSign + m + 'M' : '') + + (s ? hmsSign + s + 'S' : ''); + } + + var proto$2 = Duration.prototype; + + proto$2.isValid = isValid$1; + proto$2.abs = abs; + proto$2.add = add$1; + proto$2.subtract = subtract$1; + proto$2.as = as; + proto$2.asMilliseconds = asMilliseconds; + proto$2.asSeconds = asSeconds; + proto$2.asMinutes = asMinutes; + proto$2.asHours = asHours; + proto$2.asDays = asDays; + proto$2.asWeeks = asWeeks; + proto$2.asMonths = asMonths; + proto$2.asQuarters = asQuarters; + proto$2.asYears = asYears; + proto$2.valueOf = valueOf$1; + proto$2._bubble = bubble; + proto$2.clone = clone$1; + proto$2.get = get$2; + proto$2.milliseconds = milliseconds; + proto$2.seconds = seconds; + proto$2.minutes = minutes; + proto$2.hours = hours; + proto$2.days = days; + proto$2.weeks = weeks; + proto$2.months = months; + proto$2.years = years; + proto$2.humanize = humanize; + proto$2.toISOString = toISOString$1; + proto$2.toString = toISOString$1; + proto$2.toJSON = toISOString$1; + proto$2.locale = locale; + proto$2.localeData = localeData; + + proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1); + proto$2.lang = lang; + + // Side effect imports + + // FORMATTING + + addFormatToken('X', 0, 0, 'unix'); + addFormatToken('x', 0, 0, 'valueOf'); + + // PARSING + + addRegexToken('x', matchSigned); + addRegexToken('X', matchTimestamp); + addParseToken('X', function (input, array, config) { + config._d = new Date(parseFloat(input, 10) * 1000); + }); + addParseToken('x', function (input, array, config) { + config._d = new Date(toInt(input)); + }); + + // Side effect imports + + + hooks.version = '2.24.0'; + + setHookCallback(createLocal); + + hooks.fn = proto; + hooks.min = min; + hooks.max = max; + hooks.now = now; + hooks.utc = createUTC; + hooks.unix = createUnix; + hooks.months = listMonths; + hooks.isDate = isDate; + hooks.locale = getSetGlobalLocale; + hooks.invalid = createInvalid; + hooks.duration = createDuration; + hooks.isMoment = isMoment; + hooks.weekdays = listWeekdays; + hooks.parseZone = createInZone; + hooks.localeData = getLocale; + hooks.isDuration = isDuration; + hooks.monthsShort = listMonthsShort; + hooks.weekdaysMin = listWeekdaysMin; + hooks.defineLocale = defineLocale; + hooks.updateLocale = updateLocale; + hooks.locales = listLocales; + hooks.weekdaysShort = listWeekdaysShort; + hooks.normalizeUnits = normalizeUnits; + hooks.relativeTimeRounding = getSetRelativeTimeRounding; + hooks.relativeTimeThreshold = getSetRelativeTimeThreshold; + hooks.calendarFormat = getCalendarFormat; + hooks.prototype = proto; + + // currently HTML5 input type only supports 24-hour formats + hooks.HTML5_FMT = { + DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // + DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // + DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // + DATE: 'YYYY-MM-DD', // + TIME: 'HH:mm', // + TIME_SECONDS: 'HH:mm:ss', // + TIME_MS: 'HH:mm:ss.SSS', // + WEEK: 'GGGG-[W]WW', // + MONTH: 'YYYY-MM' // + }; + + return hooks; + +}))); +}); + +var FORMATS = { + datetime: 'MMM D, YYYY, h:mm:ss a', + millisecond: 'h:mm:ss.SSS a', + second: 'h:mm:ss a', + minute: 'h:mm a', + hour: 'hA', + day: 'MMM D', + week: 'll', + month: 'MMM YYYY', + quarter: '[Q]Q - YYYY', + year: 'YYYY' +}; + +core_adapters._date.override(typeof moment === 'function' ? { + _id: 'moment', // DEBUG ONLY + + formats: function() { + return FORMATS; + }, + + parse: function(value, format) { + if (typeof value === 'string' && typeof format === 'string') { + value = moment(value, format); + } else if (!(value instanceof moment)) { + value = moment(value); + } + return value.isValid() ? value.valueOf() : null; + }, + + format: function(time, format) { + return moment(time).format(format); + }, + + add: function(time, amount, unit) { + return moment(time).add(amount, unit).valueOf(); + }, + + diff: function(max, min, unit) { + return moment.duration(moment(max).diff(moment(min))).as(unit); + }, + + startOf: function(time, unit, weekday) { + time = moment(time); + if (unit === 'isoWeek') { + return time.isoWeekday(weekday).valueOf(); + } + return time.startOf(unit).valueOf(); + }, + + endOf: function(time, unit) { + return moment(time).endOf(unit).valueOf(); + }, + + // DEPRECATIONS + + /** + * Provided for backward compatibility with scale.getValueForPixel(). + * @deprecated since version 2.8.0 + * @todo remove at version 3 + * @private + */ + _create: function(time) { + return moment(time); + }, +} : {}); + +core_defaults._set('global', { + plugins: { + filler: { + propagate: true + } + } +}); + +var mappers = { + dataset: function(source) { + var index = source.fill; + var chart = source.chart; + var meta = chart.getDatasetMeta(index); + var visible = meta && chart.isDatasetVisible(index); + var points = (visible && meta.dataset._children) || []; + var length = points.length || 0; + + return !length ? null : function(point, i) { + return (i < length && points[i]._view) || null; + }; + }, + + boundary: function(source) { + var boundary = source.boundary; + var x = boundary ? boundary.x : null; + var y = boundary ? boundary.y : null; + + return function(point) { + return { + x: x === null ? point.x : x, + y: y === null ? point.y : y, + }; + }; + } +}; + +// @todo if (fill[0] === '#') +function decodeFill(el, index, count) { + var model = el._model || {}; + var fill = model.fill; + var target; + + if (fill === undefined) { + fill = !!model.backgroundColor; + } + + if (fill === false || fill === null) { + return false; + } + + if (fill === true) { + return 'origin'; + } + + target = parseFloat(fill, 10); + if (isFinite(target) && Math.floor(target) === target) { + if (fill[0] === '-' || fill[0] === '+') { + target = index + target; + } + + if (target === index || target < 0 || target >= count) { + return false; + } + + return target; + } + + switch (fill) { + // compatibility + case 'bottom': + return 'start'; + case 'top': + return 'end'; + case 'zero': + return 'origin'; + // supported boundaries + case 'origin': + case 'start': + case 'end': + return fill; + // invalid fill values + default: + return false; + } +} + +function computeBoundary(source) { + var model = source.el._model || {}; + var scale = source.el._scale || {}; + var fill = source.fill; + var target = null; + var horizontal; + + if (isFinite(fill)) { + return null; + } + + // Backward compatibility: until v3, we still need to support boundary values set on + // the model (scaleTop, scaleBottom and scaleZero) because some external plugins and + // controllers might still use it (e.g. the Smith chart). + + if (fill === 'start') { + target = model.scaleBottom === undefined ? scale.bottom : model.scaleBottom; + } else if (fill === 'end') { + target = model.scaleTop === undefined ? scale.top : model.scaleTop; + } else if (model.scaleZero !== undefined) { + target = model.scaleZero; + } else if (scale.getBasePosition) { + target = scale.getBasePosition(); + } else if (scale.getBasePixel) { + target = scale.getBasePixel(); + } + + if (target !== undefined && target !== null) { + if (target.x !== undefined && target.y !== undefined) { + return target; + } + + if (helpers$1.isFinite(target)) { + horizontal = scale.isHorizontal(); + return { + x: horizontal ? target : null, + y: horizontal ? null : target + }; + } + } + + return null; +} + +function resolveTarget(sources, index, propagate) { + var source = sources[index]; + var fill = source.fill; + var visited = [index]; + var target; + + if (!propagate) { + return fill; + } + + while (fill !== false && visited.indexOf(fill) === -1) { + if (!isFinite(fill)) { + return fill; + } + + target = sources[fill]; + if (!target) { + return false; + } + + if (target.visible) { + return fill; + } + + visited.push(fill); + fill = target.fill; + } + + return false; +} + +function createMapper(source) { + var fill = source.fill; + var type = 'dataset'; + + if (fill === false) { + return null; + } + + if (!isFinite(fill)) { + type = 'boundary'; + } + + return mappers[type](source); +} + +function isDrawable(point) { + return point && !point.skip; +} + +function drawArea(ctx, curve0, curve1, len0, len1) { + var i; + + if (!len0 || !len1) { + return; + } + + // building first area curve (normal) + ctx.moveTo(curve0[0].x, curve0[0].y); + for (i = 1; i < len0; ++i) { + helpers$1.canvas.lineTo(ctx, curve0[i - 1], curve0[i]); + } + + // joining the two area curves + ctx.lineTo(curve1[len1 - 1].x, curve1[len1 - 1].y); + + // building opposite area curve (reverse) + for (i = len1 - 1; i > 0; --i) { + helpers$1.canvas.lineTo(ctx, curve1[i], curve1[i - 1], true); + } +} + +function doFill(ctx, points, mapper, view, color, loop) { + var count = points.length; + var span = view.spanGaps; + var curve0 = []; + var curve1 = []; + var len0 = 0; + var len1 = 0; + var i, ilen, index, p0, p1, d0, d1; + + ctx.beginPath(); + + for (i = 0, ilen = (count + !!loop); i < ilen; ++i) { + index = i % count; + p0 = points[index]._view; + p1 = mapper(p0, index, view); + d0 = isDrawable(p0); + d1 = isDrawable(p1); + + if (d0 && d1) { + len0 = curve0.push(p0); + len1 = curve1.push(p1); + } else if (len0 && len1) { + if (!span) { + drawArea(ctx, curve0, curve1, len0, len1); + len0 = len1 = 0; + curve0 = []; + curve1 = []; + } else { + if (d0) { + curve0.push(p0); + } + if (d1) { + curve1.push(p1); + } + } + } + } + + drawArea(ctx, curve0, curve1, len0, len1); + + ctx.closePath(); + ctx.fillStyle = color; + ctx.fill(); +} + +var plugin_filler = { + id: 'filler', + + afterDatasetsUpdate: function(chart, options) { + var count = (chart.data.datasets || []).length; + var propagate = options.propagate; + var sources = []; + var meta, i, el, source; + + for (i = 0; i < count; ++i) { + meta = chart.getDatasetMeta(i); + el = meta.dataset; + source = null; + + if (el && el._model && el instanceof elements.Line) { + source = { + visible: chart.isDatasetVisible(i), + fill: decodeFill(el, i, count), + chart: chart, + el: el + }; + } + + meta.$filler = source; + sources.push(source); + } + + for (i = 0; i < count; ++i) { + source = sources[i]; + if (!source) { + continue; + } + + source.fill = resolveTarget(sources, i, propagate); + source.boundary = computeBoundary(source); + source.mapper = createMapper(source); + } + }, + + beforeDatasetDraw: function(chart, args) { + var meta = args.meta.$filler; + if (!meta) { + return; + } + + var ctx = chart.ctx; + var el = meta.el; + var view = el._view; + var points = el._children || []; + var mapper = meta.mapper; + var color = view.backgroundColor || core_defaults.global.defaultColor; + + if (mapper && color && points.length) { + helpers$1.canvas.clipArea(ctx, chart.chartArea); + doFill(ctx, points, mapper, view, color, el._loop); + helpers$1.canvas.unclipArea(ctx); + } + } +}; + +var noop$1 = helpers$1.noop; +var valueOrDefault$d = helpers$1.valueOrDefault; + +core_defaults._set('global', { + legend: { + display: true, + position: 'top', + fullWidth: true, + reverse: false, + weight: 1000, + + // a callback that will handle + onClick: function(e, legendItem) { + var index = legendItem.datasetIndex; + var ci = this.chart; + var meta = ci.getDatasetMeta(index); + + // See controller.isDatasetVisible comment + meta.hidden = meta.hidden === null ? !ci.data.datasets[index].hidden : null; + + // We hid a dataset ... rerender the chart + ci.update(); + }, + + onHover: null, + onLeave: null, + + labels: { + boxWidth: 40, + padding: 10, + // Generates labels shown in the legend + // Valid properties to return: + // text : text to display + // fillStyle : fill of coloured box + // strokeStyle: stroke of coloured box + // hidden : if this legend item refers to a hidden item + // lineCap : cap style for line + // lineDash + // lineDashOffset : + // lineJoin : + // lineWidth : + generateLabels: function(chart) { + var data = chart.data; + return helpers$1.isArray(data.datasets) ? data.datasets.map(function(dataset, i) { + return { + text: dataset.label, + fillStyle: (!helpers$1.isArray(dataset.backgroundColor) ? dataset.backgroundColor : dataset.backgroundColor[0]), + hidden: !chart.isDatasetVisible(i), + lineCap: dataset.borderCapStyle, + lineDash: dataset.borderDash, + lineDashOffset: dataset.borderDashOffset, + lineJoin: dataset.borderJoinStyle, + lineWidth: dataset.borderWidth, + strokeStyle: dataset.borderColor, + pointStyle: dataset.pointStyle, + + // Below is extra data used for toggling the datasets + datasetIndex: i + }; + }, this) : []; + } + } + }, + + legendCallback: function(chart) { + var text = []; + text.push('
    '); + for (var i = 0; i < chart.data.datasets.length; i++) { + text.push('
  • '); + if (chart.data.datasets[i].label) { + text.push(chart.data.datasets[i].label); + } + text.push('
  • '); + } + text.push('
'); + return text.join(''); + } +}); + +/** + * Helper function to get the box width based on the usePointStyle option + * @param {object} labelopts - the label options on the legend + * @param {number} fontSize - the label font size + * @return {number} width of the color box area + */ +function getBoxWidth(labelOpts, fontSize) { + return labelOpts.usePointStyle && labelOpts.boxWidth > fontSize ? + fontSize : + labelOpts.boxWidth; +} + +/** + * IMPORTANT: this class is exposed publicly as Chart.Legend, backward compatibility required! + */ +var Legend = core_element.extend({ + + initialize: function(config) { + helpers$1.extend(this, config); + + // Contains hit boxes for each dataset (in dataset order) + this.legendHitBoxes = []; + + /** + * @private + */ + this._hoveredItem = null; + + // Are we in doughnut mode which has a different data type + this.doughnutMode = false; + }, + + // These methods are ordered by lifecycle. Utilities then follow. + // Any function defined here is inherited by all legend types. + // Any function can be extended by the legend type + + beforeUpdate: noop$1, + update: function(maxWidth, maxHeight, margins) { + var me = this; + + // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;) + me.beforeUpdate(); + + // Absorb the master measurements + me.maxWidth = maxWidth; + me.maxHeight = maxHeight; + me.margins = margins; + + // Dimensions + me.beforeSetDimensions(); + me.setDimensions(); + me.afterSetDimensions(); + // Labels + me.beforeBuildLabels(); + me.buildLabels(); + me.afterBuildLabels(); + + // Fit + me.beforeFit(); + me.fit(); + me.afterFit(); + // + me.afterUpdate(); + + return me.minSize; + }, + afterUpdate: noop$1, + + // + + beforeSetDimensions: noop$1, + setDimensions: function() { + var me = this; + // Set the unconstrained dimension before label rotation + if (me.isHorizontal()) { + // Reset position before calculating rotation + me.width = me.maxWidth; + me.left = 0; + me.right = me.width; + } else { + me.height = me.maxHeight; + + // Reset position before calculating rotation + me.top = 0; + me.bottom = me.height; + } + + // Reset padding + me.paddingLeft = 0; + me.paddingTop = 0; + me.paddingRight = 0; + me.paddingBottom = 0; + + // Reset minSize + me.minSize = { + width: 0, + height: 0 + }; + }, + afterSetDimensions: noop$1, + + // + + beforeBuildLabels: noop$1, + buildLabels: function() { + var me = this; + var labelOpts = me.options.labels || {}; + var legendItems = helpers$1.callback(labelOpts.generateLabels, [me.chart], me) || []; + + if (labelOpts.filter) { + legendItems = legendItems.filter(function(item) { + return labelOpts.filter(item, me.chart.data); + }); + } + + if (me.options.reverse) { + legendItems.reverse(); + } + + me.legendItems = legendItems; + }, + afterBuildLabels: noop$1, + + // + + beforeFit: noop$1, + fit: function() { + var me = this; + var opts = me.options; + var labelOpts = opts.labels; + var display = opts.display; + + var ctx = me.ctx; + + var labelFont = helpers$1.options._parseFont(labelOpts); + var fontSize = labelFont.size; + + // Reset hit boxes + var hitboxes = me.legendHitBoxes = []; + + var minSize = me.minSize; + var isHorizontal = me.isHorizontal(); + + if (isHorizontal) { + minSize.width = me.maxWidth; // fill all the width + minSize.height = display ? 10 : 0; + } else { + minSize.width = display ? 10 : 0; + minSize.height = me.maxHeight; // fill all the height + } + + // Increase sizes here + if (display) { + ctx.font = labelFont.string; + + if (isHorizontal) { + // Labels + + // Width of each line of legend boxes. Labels wrap onto multiple lines when there are too many to fit on one + var lineWidths = me.lineWidths = [0]; + var totalHeight = 0; + + ctx.textAlign = 'left'; + ctx.textBaseline = 'top'; + + helpers$1.each(me.legendItems, function(legendItem, i) { + var boxWidth = getBoxWidth(labelOpts, fontSize); + var width = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width; + + if (i === 0 || lineWidths[lineWidths.length - 1] + width + labelOpts.padding > minSize.width) { + totalHeight += fontSize + labelOpts.padding; + lineWidths[lineWidths.length - (i > 0 ? 0 : 1)] = labelOpts.padding; + } + + // Store the hitbox width and height here. Final position will be updated in `draw` + hitboxes[i] = { + left: 0, + top: 0, + width: width, + height: fontSize + }; + + lineWidths[lineWidths.length - 1] += width + labelOpts.padding; + }); + + minSize.height += totalHeight; + + } else { + var vPadding = labelOpts.padding; + var columnWidths = me.columnWidths = []; + var totalWidth = labelOpts.padding; + var currentColWidth = 0; + var currentColHeight = 0; + var itemHeight = fontSize + vPadding; + + helpers$1.each(me.legendItems, function(legendItem, i) { + var boxWidth = getBoxWidth(labelOpts, fontSize); + var itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width; + + // If too tall, go to new column + if (i > 0 && currentColHeight + itemHeight > minSize.height - vPadding) { + totalWidth += currentColWidth + labelOpts.padding; + columnWidths.push(currentColWidth); // previous column width + + currentColWidth = 0; + currentColHeight = 0; + } + + // Get max width + currentColWidth = Math.max(currentColWidth, itemWidth); + currentColHeight += itemHeight; + + // Store the hitbox width and height here. Final position will be updated in `draw` + hitboxes[i] = { + left: 0, + top: 0, + width: itemWidth, + height: fontSize + }; + }); + + totalWidth += currentColWidth; + columnWidths.push(currentColWidth); + minSize.width += totalWidth; + } + } + + me.width = minSize.width; + me.height = minSize.height; + }, + afterFit: noop$1, + + // Shared Methods + isHorizontal: function() { + return this.options.position === 'top' || this.options.position === 'bottom'; + }, + + // Actually draw the legend on the canvas + draw: function() { + var me = this; + var opts = me.options; + var labelOpts = opts.labels; + var globalDefaults = core_defaults.global; + var defaultColor = globalDefaults.defaultColor; + var lineDefault = globalDefaults.elements.line; + var legendWidth = me.width; + var lineWidths = me.lineWidths; + + if (opts.display) { + var ctx = me.ctx; + var fontColor = valueOrDefault$d(labelOpts.fontColor, globalDefaults.defaultFontColor); + var labelFont = helpers$1.options._parseFont(labelOpts); + var fontSize = labelFont.size; + var cursor; + + // Canvas setup + ctx.textAlign = 'left'; + ctx.textBaseline = 'middle'; + ctx.lineWidth = 0.5; + ctx.strokeStyle = fontColor; // for strikethrough effect + ctx.fillStyle = fontColor; // render in correct colour + ctx.font = labelFont.string; + + var boxWidth = getBoxWidth(labelOpts, fontSize); + var hitboxes = me.legendHitBoxes; + + // current position + var drawLegendBox = function(x, y, legendItem) { + if (isNaN(boxWidth) || boxWidth <= 0) { + return; + } + + // Set the ctx for the box + ctx.save(); + + var lineWidth = valueOrDefault$d(legendItem.lineWidth, lineDefault.borderWidth); + ctx.fillStyle = valueOrDefault$d(legendItem.fillStyle, defaultColor); + ctx.lineCap = valueOrDefault$d(legendItem.lineCap, lineDefault.borderCapStyle); + ctx.lineDashOffset = valueOrDefault$d(legendItem.lineDashOffset, lineDefault.borderDashOffset); + ctx.lineJoin = valueOrDefault$d(legendItem.lineJoin, lineDefault.borderJoinStyle); + ctx.lineWidth = lineWidth; + ctx.strokeStyle = valueOrDefault$d(legendItem.strokeStyle, defaultColor); + + if (ctx.setLineDash) { + // IE 9 and 10 do not support line dash + ctx.setLineDash(valueOrDefault$d(legendItem.lineDash, lineDefault.borderDash)); + } + + if (opts.labels && opts.labels.usePointStyle) { + // Recalculate x and y for drawPoint() because its expecting + // x and y to be center of figure (instead of top left) + var radius = boxWidth * Math.SQRT2 / 2; + var centerX = x + boxWidth / 2; + var centerY = y + fontSize / 2; + + // Draw pointStyle as legend symbol + helpers$1.canvas.drawPoint(ctx, legendItem.pointStyle, radius, centerX, centerY); + } else { + // Draw box as legend symbol + if (lineWidth !== 0) { + ctx.strokeRect(x, y, boxWidth, fontSize); + } + ctx.fillRect(x, y, boxWidth, fontSize); + } + + ctx.restore(); + }; + var fillText = function(x, y, legendItem, textWidth) { + var halfFontSize = fontSize / 2; + var xLeft = boxWidth + halfFontSize + x; + var yMiddle = y + halfFontSize; + + ctx.fillText(legendItem.text, xLeft, yMiddle); + + if (legendItem.hidden) { + // Strikethrough the text if hidden + ctx.beginPath(); + ctx.lineWidth = 2; + ctx.moveTo(xLeft, yMiddle); + ctx.lineTo(xLeft + textWidth, yMiddle); + ctx.stroke(); + } + }; + + // Horizontal + var isHorizontal = me.isHorizontal(); + if (isHorizontal) { + cursor = { + x: me.left + ((legendWidth - lineWidths[0]) / 2) + labelOpts.padding, + y: me.top + labelOpts.padding, + line: 0 + }; + } else { + cursor = { + x: me.left + labelOpts.padding, + y: me.top + labelOpts.padding, + line: 0 + }; + } + + var itemHeight = fontSize + labelOpts.padding; + helpers$1.each(me.legendItems, function(legendItem, i) { + var textWidth = ctx.measureText(legendItem.text).width; + var width = boxWidth + (fontSize / 2) + textWidth; + var x = cursor.x; + var y = cursor.y; + + // Use (me.left + me.minSize.width) and (me.top + me.minSize.height) + // instead of me.right and me.bottom because me.width and me.height + // may have been changed since me.minSize was calculated + if (isHorizontal) { + if (i > 0 && x + width + labelOpts.padding > me.left + me.minSize.width) { + y = cursor.y += itemHeight; + cursor.line++; + x = cursor.x = me.left + ((legendWidth - lineWidths[cursor.line]) / 2) + labelOpts.padding; + } + } else if (i > 0 && y + itemHeight > me.top + me.minSize.height) { + x = cursor.x = x + me.columnWidths[cursor.line] + labelOpts.padding; + y = cursor.y = me.top + labelOpts.padding; + cursor.line++; + } + + drawLegendBox(x, y, legendItem); + + hitboxes[i].left = x; + hitboxes[i].top = y; + + // Fill the actual label + fillText(x, y, legendItem, textWidth); + + if (isHorizontal) { + cursor.x += width + labelOpts.padding; + } else { + cursor.y += itemHeight; + } + + }); + } + }, + + /** + * @private + */ + _getLegendItemAt: function(x, y) { + var me = this; + var i, hitBox, lh; + + if (x >= me.left && x <= me.right && y >= me.top && y <= me.bottom) { + // See if we are touching one of the dataset boxes + lh = me.legendHitBoxes; + for (i = 0; i < lh.length; ++i) { + hitBox = lh[i]; + + if (x >= hitBox.left && x <= hitBox.left + hitBox.width && y >= hitBox.top && y <= hitBox.top + hitBox.height) { + // Touching an element + return me.legendItems[i]; + } + } + } + + return null; + }, + + /** + * Handle an event + * @private + * @param {IEvent} event - The event to handle + */ + handleEvent: function(e) { + var me = this; + var opts = me.options; + var type = e.type === 'mouseup' ? 'click' : e.type; + var hoveredItem; + + if (type === 'mousemove') { + if (!opts.onHover && !opts.onLeave) { + return; + } + } else if (type === 'click') { + if (!opts.onClick) { + return; + } + } else { + return; + } + + // Chart event already has relative position in it + hoveredItem = me._getLegendItemAt(e.x, e.y); + + if (type === 'click') { + if (hoveredItem && opts.onClick) { + // use e.native for backwards compatibility + opts.onClick.call(me, e.native, hoveredItem); + } + } else { + if (opts.onLeave && hoveredItem !== me._hoveredItem) { + if (me._hoveredItem) { + opts.onLeave.call(me, e.native, me._hoveredItem); + } + me._hoveredItem = hoveredItem; + } + + if (opts.onHover && hoveredItem) { + // use e.native for backwards compatibility + opts.onHover.call(me, e.native, hoveredItem); + } + } + } +}); + +function createNewLegendAndAttach(chart, legendOpts) { + var legend = new Legend({ + ctx: chart.ctx, + options: legendOpts, + chart: chart + }); + + core_layouts.configure(chart, legend, legendOpts); + core_layouts.addBox(chart, legend); + chart.legend = legend; +} + +var plugin_legend = { + id: 'legend', + + /** + * Backward compatibility: since 2.1.5, the legend is registered as a plugin, making + * Chart.Legend obsolete. To avoid a breaking change, we export the Legend as part of + * the plugin, which one will be re-exposed in the chart.js file. + * https://github.com/chartjs/Chart.js/pull/2640 + * @private + */ + _element: Legend, + + beforeInit: function(chart) { + var legendOpts = chart.options.legend; + + if (legendOpts) { + createNewLegendAndAttach(chart, legendOpts); + } + }, + + beforeUpdate: function(chart) { + var legendOpts = chart.options.legend; + var legend = chart.legend; + + if (legendOpts) { + helpers$1.mergeIf(legendOpts, core_defaults.global.legend); + + if (legend) { + core_layouts.configure(chart, legend, legendOpts); + legend.options = legendOpts; + } else { + createNewLegendAndAttach(chart, legendOpts); + } + } else if (legend) { + core_layouts.removeBox(chart, legend); + delete chart.legend; + } + }, + + afterEvent: function(chart, e) { + var legend = chart.legend; + if (legend) { + legend.handleEvent(e); + } + } +}; + +var noop$2 = helpers$1.noop; + +core_defaults._set('global', { + title: { + display: false, + fontStyle: 'bold', + fullWidth: true, + padding: 10, + position: 'top', + text: '', + weight: 2000 // by default greater than legend (1000) to be above + } +}); + +/** + * IMPORTANT: this class is exposed publicly as Chart.Legend, backward compatibility required! + */ +var Title = core_element.extend({ + initialize: function(config) { + var me = this; + helpers$1.extend(me, config); + + // Contains hit boxes for each dataset (in dataset order) + me.legendHitBoxes = []; + }, + + // These methods are ordered by lifecycle. Utilities then follow. + + beforeUpdate: noop$2, + update: function(maxWidth, maxHeight, margins) { + var me = this; + + // Update Lifecycle - Probably don't want to ever extend or overwrite this function ;) + me.beforeUpdate(); + + // Absorb the master measurements + me.maxWidth = maxWidth; + me.maxHeight = maxHeight; + me.margins = margins; + + // Dimensions + me.beforeSetDimensions(); + me.setDimensions(); + me.afterSetDimensions(); + // Labels + me.beforeBuildLabels(); + me.buildLabels(); + me.afterBuildLabels(); + + // Fit + me.beforeFit(); + me.fit(); + me.afterFit(); + // + me.afterUpdate(); + + return me.minSize; + + }, + afterUpdate: noop$2, + + // + + beforeSetDimensions: noop$2, + setDimensions: function() { + var me = this; + // Set the unconstrained dimension before label rotation + if (me.isHorizontal()) { + // Reset position before calculating rotation + me.width = me.maxWidth; + me.left = 0; + me.right = me.width; + } else { + me.height = me.maxHeight; + + // Reset position before calculating rotation + me.top = 0; + me.bottom = me.height; + } + + // Reset padding + me.paddingLeft = 0; + me.paddingTop = 0; + me.paddingRight = 0; + me.paddingBottom = 0; + + // Reset minSize + me.minSize = { + width: 0, + height: 0 + }; + }, + afterSetDimensions: noop$2, + + // + + beforeBuildLabels: noop$2, + buildLabels: noop$2, + afterBuildLabels: noop$2, + + // + + beforeFit: noop$2, + fit: function() { + var me = this; + var opts = me.options; + var display = opts.display; + var minSize = me.minSize; + var lineCount = helpers$1.isArray(opts.text) ? opts.text.length : 1; + var fontOpts = helpers$1.options._parseFont(opts); + var textSize = display ? (lineCount * fontOpts.lineHeight) + (opts.padding * 2) : 0; + + if (me.isHorizontal()) { + minSize.width = me.maxWidth; // fill all the width + minSize.height = textSize; + } else { + minSize.width = textSize; + minSize.height = me.maxHeight; // fill all the height + } + + me.width = minSize.width; + me.height = minSize.height; + + }, + afterFit: noop$2, + + // Shared Methods + isHorizontal: function() { + var pos = this.options.position; + return pos === 'top' || pos === 'bottom'; + }, + + // Actually draw the title block on the canvas + draw: function() { + var me = this; + var ctx = me.ctx; + var opts = me.options; + + if (opts.display) { + var fontOpts = helpers$1.options._parseFont(opts); + var lineHeight = fontOpts.lineHeight; + var offset = lineHeight / 2 + opts.padding; + var rotation = 0; + var top = me.top; + var left = me.left; + var bottom = me.bottom; + var right = me.right; + var maxWidth, titleX, titleY; + + ctx.fillStyle = helpers$1.valueOrDefault(opts.fontColor, core_defaults.global.defaultFontColor); // render in correct colour + ctx.font = fontOpts.string; + + // Horizontal + if (me.isHorizontal()) { + titleX = left + ((right - left) / 2); // midpoint of the width + titleY = top + offset; + maxWidth = right - left; + } else { + titleX = opts.position === 'left' ? left + offset : right - offset; + titleY = top + ((bottom - top) / 2); + maxWidth = bottom - top; + rotation = Math.PI * (opts.position === 'left' ? -0.5 : 0.5); + } + + ctx.save(); + ctx.translate(titleX, titleY); + ctx.rotate(rotation); + ctx.textAlign = 'center'; + ctx.textBaseline = 'middle'; + + var text = opts.text; + if (helpers$1.isArray(text)) { + var y = 0; + for (var i = 0; i < text.length; ++i) { + ctx.fillText(text[i], 0, y, maxWidth); + y += lineHeight; + } + } else { + ctx.fillText(text, 0, 0, maxWidth); + } + + ctx.restore(); + } + } +}); + +function createNewTitleBlockAndAttach(chart, titleOpts) { + var title = new Title({ + ctx: chart.ctx, + options: titleOpts, + chart: chart + }); + + core_layouts.configure(chart, title, titleOpts); + core_layouts.addBox(chart, title); + chart.titleBlock = title; +} + +var plugin_title = { + id: 'title', + + /** + * Backward compatibility: since 2.1.5, the title is registered as a plugin, making + * Chart.Title obsolete. To avoid a breaking change, we export the Title as part of + * the plugin, which one will be re-exposed in the chart.js file. + * https://github.com/chartjs/Chart.js/pull/2640 + * @private + */ + _element: Title, + + beforeInit: function(chart) { + var titleOpts = chart.options.title; + + if (titleOpts) { + createNewTitleBlockAndAttach(chart, titleOpts); + } + }, + + beforeUpdate: function(chart) { + var titleOpts = chart.options.title; + var titleBlock = chart.titleBlock; + + if (titleOpts) { + helpers$1.mergeIf(titleOpts, core_defaults.global.title); + + if (titleBlock) { + core_layouts.configure(chart, titleBlock, titleOpts); + titleBlock.options = titleOpts; + } else { + createNewTitleBlockAndAttach(chart, titleOpts); + } + } else if (titleBlock) { + core_layouts.removeBox(chart, titleBlock); + delete chart.titleBlock; + } + } +}; + +var plugins = {}; +var filler = plugin_filler; +var legend = plugin_legend; +var title = plugin_title; +plugins.filler = filler; +plugins.legend = legend; +plugins.title = title; + +/** + * @namespace Chart + */ + + +core_controller.helpers = helpers$1; + +// @todo dispatch these helpers into appropriated helpers/helpers.* file and write unit tests! +core_helpers(core_controller); + +core_controller._adapters = core_adapters; +core_controller.Animation = core_animation; +core_controller.animationService = core_animations; +core_controller.controllers = controllers; +core_controller.DatasetController = core_datasetController; +core_controller.defaults = core_defaults; +core_controller.Element = core_element; +core_controller.elements = elements; +core_controller.Interaction = core_interaction; +core_controller.layouts = core_layouts; +core_controller.platform = platform; +core_controller.plugins = core_plugins; +core_controller.Scale = core_scale; +core_controller.scaleService = core_scaleService; +core_controller.Ticks = core_ticks; +core_controller.Tooltip = core_tooltip; + +// Register built-in scales + +core_controller.helpers.each(scales, function(scale, type) { + core_controller.scaleService.registerScaleType(type, scale, scale._defaults); +}); + +// Load to register built-in adapters (as side effects) + + +// Loading built-in plugins + +for (var k in plugins) { + if (plugins.hasOwnProperty(k)) { + core_controller.plugins.register(plugins[k]); + } +} + +core_controller.platform.initialize(); + +var src = core_controller; +if (typeof window !== 'undefined') { + window.Chart = core_controller; +} + +// DEPRECATIONS + +/** + * Provided for backward compatibility, not available anymore + * @namespace Chart.Chart + * @deprecated since version 2.8.0 + * @todo remove at version 3 + * @private + */ +core_controller.Chart = core_controller; + +/** + * Provided for backward compatibility, not available anymore + * @namespace Chart.Legend + * @deprecated since version 2.1.5 + * @todo remove at version 3 + * @private + */ +core_controller.Legend = plugins.legend._element; + +/** + * Provided for backward compatibility, not available anymore + * @namespace Chart.Title + * @deprecated since version 2.1.5 + * @todo remove at version 3 + * @private + */ +core_controller.Title = plugins.title._element; + +/** + * Provided for backward compatibility, use Chart.plugins instead + * @namespace Chart.pluginService + * @deprecated since version 2.1.5 + * @todo remove at version 3 + * @private + */ +core_controller.pluginService = core_controller.plugins; + +/** + * Provided for backward compatibility, inheriting from Chart.PlugingBase has no + * effect, instead simply create/register plugins via plain JavaScript objects. + * @interface Chart.PluginBase + * @deprecated since version 2.5.0 + * @todo remove at version 3 + * @private + */ +core_controller.PluginBase = core_controller.Element.extend({}); + +/** + * Provided for backward compatibility, use Chart.helpers.canvas instead. + * @namespace Chart.canvasHelpers + * @deprecated since version 2.6.0 + * @todo remove at version 3 + * @private + */ +core_controller.canvasHelpers = core_controller.helpers.canvas; + +/** + * Provided for backward compatibility, use Chart.layouts instead. + * @namespace Chart.layoutService + * @deprecated since version 2.7.3 + * @todo remove at version 3 + * @private + */ +core_controller.layoutService = core_controller.layouts; + +/** + * Provided for backward compatibility, not available anymore. + * @namespace Chart.LinearScaleBase + * @deprecated since version 2.8 + * @todo remove at version 3 + * @private + */ +core_controller.LinearScaleBase = scale_linearbase; + +/** + * Provided for backward compatibility, instead we should create a new Chart + * by setting the type in the config (`new Chart(id, {type: '{chart-type}'}`). + * @deprecated since version 2.8.0 + * @todo remove at version 3 + */ +core_controller.helpers.each( + [ + 'Bar', + 'Bubble', + 'Doughnut', + 'Line', + 'PolarArea', + 'Radar', + 'Scatter' + ], + function(klass) { + core_controller[klass] = function(ctx, cfg) { + return new core_controller(ctx, core_controller.helpers.merge(cfg || {}, { + type: klass.charAt(0).toLowerCase() + klass.slice(1) + })); + }; + } +); + +return src; + +}))); diff --git a/odoo_website_helpdesk_dashboard/static/src/js/lib/d3.min.js b/odoo_website_helpdesk_dashboard/static/src/js/lib/d3.min.js new file mode 100644 index 000000000..213a10816 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/src/js/lib/d3.min.js @@ -0,0 +1,7828 @@ +! function() { + function n(n) { + return n && (n.ownerDocument || n.document).documentElement + } + + function t(n) { + return n && n.ownerDocument ? n.ownerDocument.defaultView : n + } + + function e(n, t) { + return t > n ? -1 : n > t ? 1 : n >= t ? 0 : 0 / 0 + } + + function r(n) { + return null === n ? 0 / 0 : +n + } + + function u(n) { + return !isNaN(n) + } + + function i(n) { + return { + left: function(t, e, r, u) { + for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { + var i = r + u >>> 1; + n(t[i], e) < 0 ? r = i + 1 : u = i + } + return r + }, + right: function(t, e, r, u) { + for (arguments.length < 3 && (r = 0), arguments.length < 4 && (u = t.length); u > r;) { + var i = r + u >>> 1; + n(t[i], e) > 0 ? u = i : r = i + 1 + } + return r + } + } + } + + function o(n) { + return n.length + } + + function a(n) { + for (var t = 1; n * t % 1;) t *= 10; + return t + } + + function c(n, t) { + for (var e in t) Object.defineProperty(n.prototype, e, { + value: t[e], + enumerable: !1 + }) + } + + function l() { + this._ = Object.create(null) + } + + function s(n) { + return (n += "") === pa || n[0] === va ? va + n : n + } + + function f(n) { + return (n += "")[0] === va ? n.slice(1) : n + } + + function h(n) { + return s(n) in this._ + } + + function g(n) { + return (n = s(n)) in this._ && delete this._[n] + } + + function p() { + var n = []; + for (var t in this._) n.push(f(t)); + return n + } + + function v() { + var n = 0; + for (var t in this._) ++n; + return n + } + + function d() { + for (var n in this._) return !1; + return !0 + } + + function m() { + this._ = Object.create(null) + } + + function y(n) { + return n + } + + function M(n, t, e) { + return function() { + var r = e.apply(t, arguments); + return r === t ? n : r + } + } + + function x(n, t) { + if (t in n) return t; + t = t.charAt(0).toUpperCase() + t.slice(1); + for (var e = 0, r = da.length; r > e; ++e) { + var u = da[e] + t; + if (u in n) return u + } + } + + function b() {} + + function _() {} + + function w(n) { + function t() { + for (var t, r = e, u = -1, i = r.length; ++u < i;)(t = r[u].on) && t.apply(this, arguments); + return n + } + var e = [], + r = new l; + return t.on = function(t, u) { + var i, o = r.get(t); + return arguments.length < 2 ? o && o.on : (o && (o.on = null, e = e.slice(0, i = e.indexOf(o)).concat(e.slice(i + 1)), r.remove(t)), u && e.push(r.set(t, { + on: u + })), n) + }, t + } + + function S() { + ta.event.preventDefault() + } + + function k() { + for (var n, t = ta.event; n = t.sourceEvent;) t = n; + return t + } + + function E(n) { + for (var t = new _, e = 0, r = arguments.length; ++e < r;) t[arguments[e]] = w(t); + return t.of = function(e, r) { + return function(u) { + try { + var i = u.sourceEvent = ta.event; + u.target = n, ta.event = u, t[u.type].apply(e, r) + } finally { + ta.event = i + } + } + }, t + } + + function A(n) { + return ya(n, _a), n + } + + function N(n) { + return "function" == typeof n ? n : function() { + return Ma(n, this) + } + } + + function C(n) { + return "function" == typeof n ? n : function() { + return xa(n, this) + } + } + + function z(n, t) { + function e() { + this.removeAttribute(n) + } + + function r() { + this.removeAttributeNS(n.space, n.local) + } + + function u() { + this.setAttribute(n, t) + } + + function i() { + this.setAttributeNS(n.space, n.local, t) + } + + function o() { + var e = t.apply(this, arguments); + null == e ? this.removeAttribute(n) : this.setAttribute(n, e) + } + + function a() { + var e = t.apply(this, arguments); + null == e ? this.removeAttributeNS(n.space, n.local) : this.setAttributeNS(n.space, n.local, e) + } + return n = ta.ns.qualify(n), null == t ? n.local ? r : e : "function" == typeof t ? n.local ? a : o : n.local ? i : u + } + + function q(n) { + return n.trim().replace(/\s+/g, " ") + } + + function L(n) { + return new RegExp("(?:^|\\s+)" + ta.requote(n) + "(?:\\s+|$)", "g") + } + + function T(n) { + return (n + "").trim().split(/^|\s+/) + } + + function R(n, t) { + function e() { + for (var e = -1; ++e < u;) n[e](this, t) + } + + function r() { + for (var e = -1, r = t.apply(this, arguments); ++e < u;) n[e](this, r) + } + n = T(n).map(D); + var u = n.length; + return "function" == typeof t ? r : e + } + + function D(n) { + var t = L(n); + return function(e, r) { + if (u = e.classList) return r ? u.add(n) : u.remove(n); + var u = e.getAttribute("class") || ""; + r ? (t.lastIndex = 0, t.test(u) || e.setAttribute("class", q(u + " " + n))) : e.setAttribute("class", q(u.replace(t, " "))) + } + } + + function P(n, t, e) { + function r() { + this.style.removeProperty(n) + } + + function u() { + this.style.setProperty(n, t, e) + } + + function i() { + var r = t.apply(this, arguments); + null == r ? this.style.removeProperty(n) : this.style.setProperty(n, r, e) + } + return null == t ? r : "function" == typeof t ? i : u + } + + function U(n, t) { + function e() { + delete this[n] + } + + function r() { + this[n] = t + } + + function u() { + var e = t.apply(this, arguments); + null == e ? delete this[n] : this[n] = e + } + return null == t ? e : "function" == typeof t ? u : r + } + + function j(n) { + function t() { + var t = this.ownerDocument, + e = this.namespaceURI; + return e ? t.createElementNS(e, n) : t.createElement(n) + } + + function e() { + return this.ownerDocument.createElementNS(n.space, n.local) + } + return "function" == typeof n ? n : (n = ta.ns.qualify(n)).local ? e : t + } + + function F() { + var n = this.parentNode; + n && n.removeChild(this) + } + + function H(n) { + return { + __data__: n + } + } + + function O(n) { + return function() { + return ba(this, n) + } + } + + function I(n) { + return arguments.length || (n = e), + function(t, e) { + return t && e ? n(t.__data__, e.__data__) : !t - !e + } + } + + function Y(n, t) { + for (var e = 0, r = n.length; r > e; e++) + for (var u, i = n[e], o = 0, a = i.length; a > o; o++)(u = i[o]) && t(u, o, e); + return n + } + + function Z(n) { + return ya(n, Sa), n + } + + function V(n) { + var t, e; + return function(r, u, i) { + var o, a = n[i].update, + c = a.length; + for (i != e && (e = i, t = 0), u >= t && (t = u + 1); !(o = a[t]) && ++t < c;); + return o + } + } + + function X(n, t, e) { + function r() { + var t = this[o]; + t && (this.removeEventListener(n, t, t.$), delete this[o]) + } + + function u() { + var u = c(t, ra(arguments)); + r.call(this), this.addEventListener(n, this[o] = u, u.$ = e), u._ = t + } + + function i() { + var t, e = new RegExp("^__on([^.]+)" + ta.requote(n) + "$"); + for (var r in this) + if (t = r.match(e)) { + var u = this[r]; + this.removeEventListener(t[1], u, u.$), delete this[r] + } + } + var o = "__on" + n, + a = n.indexOf("."), + c = $; + a > 0 && (n = n.slice(0, a)); + var l = ka.get(n); + return l && (n = l, c = B), a ? t ? u : r : t ? b : i + } + + function $(n, t) { + return function(e) { + var r = ta.event; + ta.event = e, t[0] = this.__data__; + try { + n.apply(this, t) + } finally { + ta.event = r + } + } + } + + function B(n, t) { + var e = $(n, t); + return function(n) { + var t = this, + r = n.relatedTarget; + r && (r === t || 8 & r.compareDocumentPosition(t)) || e.call(t, n) + } + } + + function W(e) { + var r = ".dragsuppress-" + ++Aa, + u = "click" + r, + i = ta.select(t(e)).on("touchmove" + r, S).on("dragstart" + r, S).on("selectstart" + r, S); + if (null == Ea && (Ea = "onselectstart" in e ? !1 : x(e.style, "userSelect")), Ea) { + var o = n(e).style, + a = o[Ea]; + o[Ea] = "none" + } + return function(n) { + if (i.on(r, null), Ea && (o[Ea] = a), n) { + var t = function() { + i.on(u, null) + }; + i.on(u, function() { + S(), t() + }, !0), setTimeout(t, 0) + } + } + } + + function J(n, e) { + e.changedTouches && (e = e.changedTouches[0]); + var r = n.ownerSVGElement || n; + if (r.createSVGPoint) { + var u = r.createSVGPoint(); + if (0 > Na) { + var i = t(n); + if (i.scrollX || i.scrollY) { + r = ta.select("body").append("svg").style({ + position: "absolute", + top: 0, + left: 0, + margin: 0, + padding: 0, + border: "none" + }, "important"); + var o = r[0][0].getScreenCTM(); + Na = !(o.f || o.e), r.remove() + } + } + return Na ? (u.x = e.pageX, u.y = e.pageY) : (u.x = e.clientX, u.y = e.clientY), u = u.matrixTransform(n.getScreenCTM().inverse()), [u.x, u.y] + } + var a = n.getBoundingClientRect(); + return [e.clientX - a.left - n.clientLeft, e.clientY - a.top - n.clientTop] + } + + function G() { + return ta.event.changedTouches[0].identifier + } + + function K(n) { + return n > 0 ? 1 : 0 > n ? -1 : 0 + } + + function Q(n, t, e) { + return (t[0] - n[0]) * (e[1] - n[1]) - (t[1] - n[1]) * (e[0] - n[0]) + } + + function nt(n) { + return n > 1 ? 0 : -1 > n ? qa : Math.acos(n) + } + + function tt(n) { + return n > 1 ? Ra : -1 > n ? -Ra : Math.asin(n) + } + + function et(n) { + return ((n = Math.exp(n)) - 1 / n) / 2 + } + + function rt(n) { + return ((n = Math.exp(n)) + 1 / n) / 2 + } + + function ut(n) { + return ((n = Math.exp(2 * n)) - 1) / (n + 1) + } + + function it(n) { + return (n = Math.sin(n / 2)) * n + } + + function ot() {} + + function at(n, t, e) { + return this instanceof at ? (this.h = +n, this.s = +t, void(this.l = +e)) : arguments.length < 2 ? n instanceof at ? new at(n.h, n.s, n.l) : bt("" + n, _t, at) : new at(n, t, e) + } + + function ct(n, t, e) { + function r(n) { + return n > 360 ? n -= 360 : 0 > n && (n += 360), 60 > n ? i + (o - i) * n / 60 : 180 > n ? o : 240 > n ? i + (o - i) * (240 - n) / 60 : i + } + + function u(n) { + return Math.round(255 * r(n)) + } + var i, o; + return n = isNaN(n) ? 0 : (n %= 360) < 0 ? n + 360 : n, t = isNaN(t) ? 0 : 0 > t ? 0 : t > 1 ? 1 : t, e = 0 > e ? 0 : e > 1 ? 1 : e, o = .5 >= e ? e * (1 + t) : e + t - e * t, i = 2 * e - o, new mt(u(n + 120), u(n), u(n - 120)) + } + + function lt(n, t, e) { + return this instanceof lt ? (this.h = +n, this.c = +t, void(this.l = +e)) : arguments.length < 2 ? n instanceof lt ? new lt(n.h, n.c, n.l) : n instanceof ft ? gt(n.l, n.a, n.b) : gt((n = wt((n = ta.rgb(n)).r, n.g, n.b)).l, n.a, n.b) : new lt(n, t, e) + } + + function st(n, t, e) { + return isNaN(n) && (n = 0), isNaN(t) && (t = 0), new ft(e, Math.cos(n *= Da) * t, Math.sin(n) * t) + } + + function ft(n, t, e) { + return this instanceof ft ? (this.l = +n, this.a = +t, void(this.b = +e)) : arguments.length < 2 ? n instanceof ft ? new ft(n.l, n.a, n.b) : n instanceof lt ? st(n.h, n.c, n.l) : wt((n = mt(n)).r, n.g, n.b) : new ft(n, t, e) + } + + function ht(n, t, e) { + var r = (n + 16) / 116, + u = r + t / 500, + i = r - e / 200; + return u = pt(u) * Xa, r = pt(r) * $a, i = pt(i) * Ba, new mt(dt(3.2404542 * u - 1.5371385 * r - .4985314 * i), dt(-.969266 * u + 1.8760108 * r + .041556 * i), dt(.0556434 * u - .2040259 * r + 1.0572252 * i)) + } + + function gt(n, t, e) { + return n > 0 ? new lt(Math.atan2(e, t) * Pa, Math.sqrt(t * t + e * e), n) : new lt(0 / 0, 0 / 0, n) + } + + function pt(n) { + return n > .206893034 ? n * n * n : (n - 4 / 29) / 7.787037 + } + + function vt(n) { + return n > .008856 ? Math.pow(n, 1 / 3) : 7.787037 * n + 4 / 29 + } + + function dt(n) { + return Math.round(255 * (.00304 >= n ? 12.92 * n : 1.055 * Math.pow(n, 1 / 2.4) - .055)) + } + + function mt(n, t, e) { + return this instanceof mt ? (this.r = ~~n, this.g = ~~t, void(this.b = ~~e)) : arguments.length < 2 ? n instanceof mt ? new mt(n.r, n.g, n.b) : bt("" + n, mt, ct) : new mt(n, t, e) + } + + function yt(n) { + return new mt(n >> 16, n >> 8 & 255, 255 & n) + } + + function Mt(n) { + return yt(n) + "" + } + + function xt(n) { + return 16 > n ? "0" + Math.max(0, n).toString(16) : Math.min(255, n).toString(16) + } + + function bt(n, t, e) { + var r, u, i, o = 0, + a = 0, + c = 0; + if (r = /([a-z]+)\((.*)\)/i.exec(n)) switch (u = r[2].split(","), r[1]) { + case "hsl": + return e(parseFloat(u[0]), parseFloat(u[1]) / 100, parseFloat(u[2]) / 100); + case "rgb": + return t(kt(u[0]), kt(u[1]), kt(u[2])) + } + return (i = Ga.get(n.toLowerCase())) ? t(i.r, i.g, i.b) : (null == n || "#" !== n.charAt(0) || isNaN(i = parseInt(n.slice(1), 16)) || (4 === n.length ? (o = (3840 & i) >> 4, o = o >> 4 | o, a = 240 & i, a = a >> 4 | a, c = 15 & i, c = c << 4 | c) : 7 === n.length && (o = (16711680 & i) >> 16, a = (65280 & i) >> 8, c = 255 & i)), t(o, a, c)) + } + + function _t(n, t, e) { + var r, u, i = Math.min(n /= 255, t /= 255, e /= 255), + o = Math.max(n, t, e), + a = o - i, + c = (o + i) / 2; + return a ? (u = .5 > c ? a / (o + i) : a / (2 - o - i), r = n == o ? (t - e) / a + (e > t ? 6 : 0) : t == o ? (e - n) / a + 2 : (n - t) / a + 4, r *= 60) : (r = 0 / 0, u = c > 0 && 1 > c ? 0 : r), new at(r, u, c) + } + + function wt(n, t, e) { + n = St(n), t = St(t), e = St(e); + var r = vt((.4124564 * n + .3575761 * t + .1804375 * e) / Xa), + u = vt((.2126729 * n + .7151522 * t + .072175 * e) / $a), + i = vt((.0193339 * n + .119192 * t + .9503041 * e) / Ba); + return ft(116 * u - 16, 500 * (r - u), 200 * (u - i)) + } + + function St(n) { + return (n /= 255) <= .04045 ? n / 12.92 : Math.pow((n + .055) / 1.055, 2.4) + } + + function kt(n) { + var t = parseFloat(n); + return "%" === n.charAt(n.length - 1) ? Math.round(2.55 * t) : t + } + + function Et(n) { + return "function" == typeof n ? n : function() { + return n + } + } + + function At(n) { + return function(t, e, r) { + return 2 === arguments.length && "function" == typeof e && (r = e, e = null), Nt(t, e, n, r) + } + } + + function Nt(n, t, e, r) { + function u() { + var n, t = c.status; + if (!t && zt(c) || t >= 200 && 300 > t || 304 === t) { + try { + n = e.call(i, c) + } catch (r) { + return void o.error.call(i, r) + } + o.load.call(i, n) + } else o.error.call(i, c) + } + var i = {}, + o = ta.dispatch("beforesend", "progress", "load", "error"), + a = {}, + c = new XMLHttpRequest, + l = null; + return !this.XDomainRequest || "withCredentials" in c || !/^(http(s)?:)?\/\//.test(n) || (c = new XDomainRequest), "onload" in c ? c.onload = c.onerror = u : c.onreadystatechange = function() { + c.readyState > 3 && u() + }, c.onprogress = function(n) { + var t = ta.event; + ta.event = n; + try { + o.progress.call(i, c) + } finally { + ta.event = t + } + }, i.header = function(n, t) { + return n = (n + "").toLowerCase(), arguments.length < 2 ? a[n] : (null == t ? delete a[n] : a[n] = t + "", i) + }, i.mimeType = function(n) { + return arguments.length ? (t = null == n ? null : n + "", i) : t + }, i.responseType = function(n) { + return arguments.length ? (l = n, i) : l + }, i.response = function(n) { + return e = n, i + }, ["get", "post"].forEach(function(n) { + i[n] = function() { + return i.send.apply(i, [n].concat(ra(arguments))) + } + }), i.send = function(e, r, u) { + if (2 === arguments.length && "function" == typeof r && (u = r, r = null), c.open(e, n, !0), null == t || "accept" in a || (a.accept = t + ",*/*"), c.setRequestHeader) + for (var s in a) c.setRequestHeader(s, a[s]); + return null != t && c.overrideMimeType && c.overrideMimeType(t), null != l && (c.responseType = l), null != u && i.on("error", u).on("load", function(n) { + u(null, n) + }), o.beforesend.call(i, c), c.send(null == r ? null : r), i + }, i.abort = function() { + return c.abort(), i + }, ta.rebind(i, o, "on"), null == r ? i : i.get(Ct(r)) + } + + function Ct(n) { + return 1 === n.length ? function(t, e) { + n(null == t ? e : null) + } : n + } + + function zt(n) { + var t = n.responseType; + return t && "text" !== t ? n.response : n.responseText + } + + function qt() { + var n = Lt(), + t = Tt() - n; + t > 24 ? (isFinite(t) && (clearTimeout(tc), tc = setTimeout(qt, t)), nc = 0) : (nc = 1, rc(qt)) + } + + function Lt() { + var n = Date.now(); + for (ec = Ka; ec;) n >= ec.t && (ec.f = ec.c(n - ec.t)), ec = ec.n; + return n + } + + function Tt() { + for (var n, t = Ka, e = 1 / 0; t;) t.f ? t = n ? n.n = t.n : Ka = t.n : (t.t < e && (e = t.t), t = (n = t).n); + return Qa = n, e + } + + function Rt(n, t) { + return t - (n ? Math.ceil(Math.log(n) / Math.LN10) : 1) + } + + function Dt(n, t) { + var e = Math.pow(10, 3 * ga(8 - t)); + return { + scale: t > 8 ? function(n) { + return n / e + } : function(n) { + return n * e + }, + symbol: n + } + } + + function Pt(n) { + var t = n.decimal, + e = n.thousands, + r = n.grouping, + u = n.currency, + i = r && e ? function(n, t) { + for (var u = n.length, i = [], o = 0, a = r[0], c = 0; u > 0 && a > 0 && (c + a + 1 > t && (a = Math.max(1, t - c)), i.push(n.substring(u -= a, u + a)), !((c += a + 1) > t));) a = r[o = (o + 1) % r.length]; + return i.reverse().join(e) + } : y; + return function(n) { + var e = ic.exec(n), + r = e[1] || " ", + o = e[2] || ">", + a = e[3] || "-", + c = e[4] || "", + l = e[5], + s = +e[6], + f = e[7], + h = e[8], + g = e[9], + p = 1, + v = "", + d = "", + m = !1, + y = !0; + switch (h && (h = +h.substring(1)), (l || "0" === r && "=" === o) && (l = r = "0", o = "="), g) { + case "n": + f = !0, g = "g"; + break; + case "%": + p = 100, d = "%", g = "f"; + break; + case "p": + p = 100, d = "%", g = "r"; + break; + case "b": + case "o": + case "x": + case "X": + "#" === c && (v = "0" + g.toLowerCase()); + case "c": + y = !1; + case "d": + m = !0, h = 0; + break; + case "s": + p = -1, g = "r" + } + "$" === c && (v = u[0], d = u[1]), "r" != g || h || (g = "g"), null != h && ("g" == g ? h = Math.max(1, Math.min(21, h)) : ("e" == g || "f" == g) && (h = Math.max(0, Math.min(20, h)))), g = oc.get(g) || Ut; + var M = l && f; + return function(n) { + var e = d; + if (m && n % 1) return ""; + var u = 0 > n || 0 === n && 0 > 1 / n ? (n = -n, "-") : "-" === a ? "" : a; + if (0 > p) { + var c = ta.formatPrefix(n, h); + n = c.scale(n), e = c.symbol + d + } else n *= p; + n = g(n, h); + var x, b, _ = n.lastIndexOf("."); + if (0 > _) { + var w = y ? n.lastIndexOf("e") : -1; + 0 > w ? (x = n, b = "") : (x = n.substring(0, w), b = n.substring(w)) + } else x = n.substring(0, _), b = t + n.substring(_ + 1); + !l && f && (x = i(x, 1 / 0)); + var S = v.length + x.length + b.length + (M ? 0 : u.length), + k = s > S ? new Array(S = s - S + 1).join(r) : ""; + return M && (x = i(k + x, k.length ? s - b.length : 1 / 0)), u += v, n = x + b, ("<" === o ? u + n + k : ">" === o ? k + u + n : "^" === o ? k.substring(0, S >>= 1) + u + n + k.substring(S) : u + (M ? n : k + n)) + e + } + } + } + + function Ut(n) { + return n + "" + } + + function jt() { + this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]) + } + + function Ft(n, t, e) { + function r(t) { + var e = n(t), + r = i(e, 1); + return r - t > t - e ? e : r + } + + function u(e) { + return t(e = n(new cc(e - 1)), 1), e + } + + function i(n, e) { + return t(n = new cc(+n), e), n + } + + function o(n, r, i) { + var o = u(n), + a = []; + if (i > 1) + for (; r > o;) e(o) % i || a.push(new Date(+o)), t(o, 1); + else + for (; r > o;) a.push(new Date(+o)), t(o, 1); + return a + } + + function a(n, t, e) { + try { + cc = jt; + var r = new jt; + return r._ = n, o(r, t, e) + } finally { + cc = Date + } + } + n.floor = n, n.round = r, n.ceil = u, n.offset = i, n.range = o; + var c = n.utc = Ht(n); + return c.floor = c, c.round = Ht(r), c.ceil = Ht(u), c.offset = Ht(i), c.range = a, n + } + + function Ht(n) { + return function(t, e) { + try { + cc = jt; + var r = new jt; + return r._ = t, n(r, e)._ + } finally { + cc = Date + } + } + } + + function Ot(n) { + function t(n) { + function t(t) { + for (var e, u, i, o = [], a = -1, c = 0; ++a < r;) 37 === n.charCodeAt(a) && (o.push(n.slice(c, a)), null != (u = sc[e = n.charAt(++a)]) && (e = n.charAt(++a)), (i = N[e]) && (e = i(t, null == u ? "e" === e ? " " : "0" : u)), o.push(e), c = a + 1); + return o.push(n.slice(c, a)), o.join("") + } + var r = n.length; + return t.parse = function(t) { + var r = { + y: 1900, + m: 0, + d: 1, + H: 0, + M: 0, + S: 0, + L: 0, + Z: null + }, + u = e(r, n, t, 0); + if (u != t.length) return null; + "p" in r && (r.H = r.H % 12 + 12 * r.p); + var i = null != r.Z && cc !== jt, + o = new(i ? jt : cc); + return "j" in r ? o.setFullYear(r.y, 0, r.j) : "w" in r && ("W" in r || "U" in r) ? (o.setFullYear(r.y, 0, 1), o.setFullYear(r.y, 0, "W" in r ? (r.w + 6) % 7 + 7 * r.W - (o.getDay() + 5) % 7 : r.w + 7 * r.U - (o.getDay() + 6) % 7)) : o.setFullYear(r.y, r.m, r.d), o.setHours(r.H + (r.Z / 100 | 0), r.M + r.Z % 100, r.S, r.L), i ? o._ : o + }, t.toString = function() { + return n + }, t + } + + function e(n, t, e, r) { + for (var u, i, o, a = 0, c = t.length, l = e.length; c > a;) { + if (r >= l) return -1; + if (u = t.charCodeAt(a++), 37 === u) { + if (o = t.charAt(a++), i = C[o in sc ? t.charAt(a++) : o], !i || (r = i(n, e, r)) < 0) return -1 + } else if (u != e.charCodeAt(r++)) return -1 + } + return r + } + + function r(n, t, e) { + _.lastIndex = 0; + var r = _.exec(t.slice(e)); + return r ? (n.w = w.get(r[0].toLowerCase()), e + r[0].length) : -1 + } + + function u(n, t, e) { + x.lastIndex = 0; + var r = x.exec(t.slice(e)); + return r ? (n.w = b.get(r[0].toLowerCase()), e + r[0].length) : -1 + } + + function i(n, t, e) { + E.lastIndex = 0; + var r = E.exec(t.slice(e)); + return r ? (n.m = A.get(r[0].toLowerCase()), e + r[0].length) : -1 + } + + function o(n, t, e) { + S.lastIndex = 0; + var r = S.exec(t.slice(e)); + return r ? (n.m = k.get(r[0].toLowerCase()), e + r[0].length) : -1 + } + + function a(n, t, r) { + return e(n, N.c.toString(), t, r) + } + + function c(n, t, r) { + return e(n, N.x.toString(), t, r) + } + + function l(n, t, r) { + return e(n, N.X.toString(), t, r) + } + + function s(n, t, e) { + var r = M.get(t.slice(e, e += 2).toLowerCase()); + return null == r ? -1 : (n.p = r, e) + } + var f = n.dateTime, + h = n.date, + g = n.time, + p = n.periods, + v = n.days, + d = n.shortDays, + m = n.months, + y = n.shortMonths; + t.utc = function(n) { + function e(n) { + try { + cc = jt; + var t = new cc; + return t._ = n, r(t) + } finally { + cc = Date + } + } + var r = t(n); + return e.parse = function(n) { + try { + cc = jt; + var t = r.parse(n); + return t && t._ + } finally { + cc = Date + } + }, e.toString = r.toString, e + }, t.multi = t.utc.multi = ae; + var M = ta.map(), + x = Yt(v), + b = Zt(v), + _ = Yt(d), + w = Zt(d), + S = Yt(m), + k = Zt(m), + E = Yt(y), + A = Zt(y); + p.forEach(function(n, t) { + M.set(n.toLowerCase(), t) + }); + var N = { + a: function(n) { + return d[n.getDay()] + }, + A: function(n) { + return v[n.getDay()] + }, + b: function(n) { + return y[n.getMonth()] + }, + B: function(n) { + return m[n.getMonth()] + }, + c: t(f), + d: function(n, t) { + return It(n.getDate(), t, 2) + }, + e: function(n, t) { + return It(n.getDate(), t, 2) + }, + H: function(n, t) { + return It(n.getHours(), t, 2) + }, + I: function(n, t) { + return It(n.getHours() % 12 || 12, t, 2) + }, + j: function(n, t) { + return It(1 + ac.dayOfYear(n), t, 3) + }, + L: function(n, t) { + return It(n.getMilliseconds(), t, 3) + }, + m: function(n, t) { + return It(n.getMonth() + 1, t, 2) + }, + M: function(n, t) { + return It(n.getMinutes(), t, 2) + }, + p: function(n) { + return p[+(n.getHours() >= 12)] + }, + S: function(n, t) { + return It(n.getSeconds(), t, 2) + }, + U: function(n, t) { + return It(ac.sundayOfYear(n), t, 2) + }, + w: function(n) { + return n.getDay() + }, + W: function(n, t) { + return It(ac.mondayOfYear(n), t, 2) + }, + x: t(h), + X: t(g), + y: function(n, t) { + return It(n.getFullYear() % 100, t, 2) + }, + Y: function(n, t) { + return It(n.getFullYear() % 1e4, t, 4) + }, + Z: ie, + "%": function() { + return "%" + } + }, + C = { + a: r, + A: u, + b: i, + B: o, + c: a, + d: Qt, + e: Qt, + H: te, + I: te, + j: ne, + L: ue, + m: Kt, + M: ee, + p: s, + S: re, + U: Xt, + w: Vt, + W: $t, + x: c, + X: l, + y: Wt, + Y: Bt, + Z: Jt, + "%": oe + }; + return t + } + + function It(n, t, e) { + var r = 0 > n ? "-" : "", + u = (r ? -n : n) + "", + i = u.length; + return r + (e > i ? new Array(e - i + 1).join(t) + u : u) + } + + function Yt(n) { + return new RegExp("^(?:" + n.map(ta.requote).join("|") + ")", "i") + } + + function Zt(n) { + for (var t = new l, e = -1, r = n.length; ++e < r;) t.set(n[e].toLowerCase(), e); + return t + } + + function Vt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 1)); + return r ? (n.w = +r[0], e + r[0].length) : -1 + } + + function Xt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e)); + return r ? (n.U = +r[0], e + r[0].length) : -1 + } + + function $t(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e)); + return r ? (n.W = +r[0], e + r[0].length) : -1 + } + + function Bt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 4)); + return r ? (n.y = +r[0], e + r[0].length) : -1 + } + + function Wt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.y = Gt(+r[0]), e + r[0].length) : -1 + } + + function Jt(n, t, e) { + return /^[+-]\d{4}$/.test(t = t.slice(e, e + 5)) ? (n.Z = -t, e + 5) : -1 + } + + function Gt(n) { + return n + (n > 68 ? 1900 : 2e3) + } + + function Kt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.m = r[0] - 1, e + r[0].length) : -1 + } + + function Qt(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.d = +r[0], e + r[0].length) : -1 + } + + function ne(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 3)); + return r ? (n.j = +r[0], e + r[0].length) : -1 + } + + function te(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.H = +r[0], e + r[0].length) : -1 + } + + function ee(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.M = +r[0], e + r[0].length) : -1 + } + + function re(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 2)); + return r ? (n.S = +r[0], e + r[0].length) : -1 + } + + function ue(n, t, e) { + fc.lastIndex = 0; + var r = fc.exec(t.slice(e, e + 3)); + return r ? (n.L = +r[0], e + r[0].length) : -1 + } + + function ie(n) { + var t = n.getTimezoneOffset(), + e = t > 0 ? "-" : "+", + r = ga(t) / 60 | 0, + u = ga(t) % 60; + return e + It(r, "0", 2) + It(u, "0", 2) + } + + function oe(n, t, e) { + hc.lastIndex = 0; + var r = hc.exec(t.slice(e, e + 1)); + return r ? e + r[0].length : -1 + } + + function ae(n) { + for (var t = n.length, e = -1; ++e < t;) n[e][0] = this(n[e][0]); + return function(t) { + for (var e = 0, r = n[e]; !r[1](t);) r = n[++e]; + return r[0](t) + } + } + + function ce() {} + + function le(n, t, e) { + var r = e.s = n + t, + u = r - n, + i = r - u; + e.t = n - i + (t - u) + } + + function se(n, t) { + n && dc.hasOwnProperty(n.type) && dc[n.type](n, t) + } + + function fe(n, t, e) { + var r, u = -1, + i = n.length - e; + for (t.lineStart(); ++u < i;) r = n[u], t.point(r[0], r[1], r[2]); + t.lineEnd() + } + + function he(n, t) { + var e = -1, + r = n.length; + for (t.polygonStart(); ++e < r;) fe(n[e], t, 1); + t.polygonEnd() + } + + function ge() { + function n(n, t) { + n *= Da, t = t * Da / 2 + qa / 4; + var e = n - r, + o = e >= 0 ? 1 : -1, + a = o * e, + c = Math.cos(t), + l = Math.sin(t), + s = i * l, + f = u * c + s * Math.cos(a), + h = s * o * Math.sin(a); + yc.add(Math.atan2(h, f)), r = n, u = c, i = l + } + var t, e, r, u, i; + Mc.point = function(o, a) { + Mc.point = n, r = (t = o) * Da, u = Math.cos(a = (e = a) * Da / 2 + qa / 4), i = Math.sin(a) + }, Mc.lineEnd = function() { + n(t, e) + } + } + + function pe(n) { + var t = n[0], + e = n[1], + r = Math.cos(e); + return [r * Math.cos(t), r * Math.sin(t), Math.sin(e)] + } + + function ve(n, t) { + return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] + } + + function de(n, t) { + return [n[1] * t[2] - n[2] * t[1], n[2] * t[0] - n[0] * t[2], n[0] * t[1] - n[1] * t[0]] + } + + function me(n, t) { + n[0] += t[0], n[1] += t[1], n[2] += t[2] + } + + function ye(n, t) { + return [n[0] * t, n[1] * t, n[2] * t] + } + + function Me(n) { + var t = Math.sqrt(n[0] * n[0] + n[1] * n[1] + n[2] * n[2]); + n[0] /= t, n[1] /= t, n[2] /= t + } + + function xe(n) { + return [Math.atan2(n[1], n[0]), tt(n[2])] + } + + function be(n, t) { + return ga(n[0] - t[0]) < Ca && ga(n[1] - t[1]) < Ca + } + + function _e(n, t) { + n *= Da; + var e = Math.cos(t *= Da); + we(e * Math.cos(n), e * Math.sin(n), Math.sin(t)) + } + + function we(n, t, e) { + ++xc, _c += (n - _c) / xc, wc += (t - wc) / xc, Sc += (e - Sc) / xc + } + + function Se() { + function n(n, u) { + n *= Da; + var i = Math.cos(u *= Da), + o = i * Math.cos(n), + a = i * Math.sin(n), + c = Math.sin(u), + l = Math.atan2(Math.sqrt((l = e * c - r * a) * l + (l = r * o - t * c) * l + (l = t * a - e * o) * l), t * o + e * a + r * c); + bc += l, kc += l * (t + (t = o)), Ec += l * (e + (e = a)), Ac += l * (r + (r = c)), we(t, e, r) + } + var t, e, r; + qc.point = function(u, i) { + u *= Da; + var o = Math.cos(i *= Da); + t = o * Math.cos(u), e = o * Math.sin(u), r = Math.sin(i), qc.point = n, we(t, e, r) + } + } + + function ke() { + qc.point = _e + } + + function Ee() { + function n(n, t) { + n *= Da; + var e = Math.cos(t *= Da), + o = e * Math.cos(n), + a = e * Math.sin(n), + c = Math.sin(t), + l = u * c - i * a, + s = i * o - r * c, + f = r * a - u * o, + h = Math.sqrt(l * l + s * s + f * f), + g = r * o + u * a + i * c, + p = h && -nt(g) / h, + v = Math.atan2(h, g); + Nc += p * l, Cc += p * s, zc += p * f, bc += v, kc += v * (r + (r = o)), Ec += v * (u + (u = a)), Ac += v * (i + (i = c)), we(r, u, i) + } + var t, e, r, u, i; + qc.point = function(o, a) { + t = o, e = a, qc.point = n, o *= Da; + var c = Math.cos(a *= Da); + r = c * Math.cos(o), u = c * Math.sin(o), i = Math.sin(a), we(r, u, i) + }, qc.lineEnd = function() { + n(t, e), qc.lineEnd = ke, qc.point = _e + } + } + + function Ae(n, t) { + function e(e, r) { + return e = n(e, r), t(e[0], e[1]) + } + return n.invert && t.invert && (e.invert = function(e, r) { + return e = t.invert(e, r), e && n.invert(e[0], e[1]) + }), e + } + + function Ne() { + return !0 + } + + function Ce(n, t, e, r, u) { + var i = [], + o = []; + if (n.forEach(function(n) { + if (!((t = n.length - 1) <= 0)) { + var t, e = n[0], + r = n[t]; + if (be(e, r)) { + u.lineStart(); + for (var a = 0; t > a; ++a) u.point((e = n[a])[0], e[1]); + return void u.lineEnd() + } + var c = new qe(e, n, null, !0), + l = new qe(e, null, c, !1); + c.o = l, i.push(c), o.push(l), c = new qe(r, n, null, !1), l = new qe(r, null, c, !0), c.o = l, i.push(c), o.push(l) + } + }), o.sort(t), ze(i), ze(o), i.length) { + for (var a = 0, c = e, l = o.length; l > a; ++a) o[a].e = c = !c; + for (var s, f, h = i[0];;) { + for (var g = h, p = !0; g.v;) + if ((g = g.n) === h) return; + s = g.z, u.lineStart(); + do { + if (g.v = g.o.v = !0, g.e) { + if (p) + for (var a = 0, l = s.length; l > a; ++a) u.point((f = s[a])[0], f[1]); + else r(g.x, g.n.x, 1, u); + g = g.n + } else { + if (p) { + s = g.p.z; + for (var a = s.length - 1; a >= 0; --a) u.point((f = s[a])[0], f[1]) + } else r(g.x, g.p.x, -1, u); + g = g.p + } + g = g.o, s = g.z, p = !p + } while (!g.v); + u.lineEnd() + } + } + } + + function ze(n) { + if (t = n.length) { + for (var t, e, r = 0, u = n[0]; ++r < t;) u.n = e = n[r], e.p = u, u = e; + u.n = e = n[0], e.p = u + } + } + + function qe(n, t, e, r) { + this.x = n, this.z = t, this.o = e, this.e = r, this.v = !1, this.n = this.p = null + } + + function Le(n, t, e, r) { + return function(u, i) { + function o(t, e) { + var r = u(t, e); + n(t = r[0], e = r[1]) && i.point(t, e) + } + + function a(n, t) { + var e = u(n, t); + d.point(e[0], e[1]) + } + + function c() { + y.point = a, d.lineStart() + } + + function l() { + y.point = o, d.lineEnd() + } + + function s(n, t) { + v.push([n, t]); + var e = u(n, t); + x.point(e[0], e[1]) + } + + function f() { + x.lineStart(), v = [] + } + + function h() { + s(v[0][0], v[0][1]), x.lineEnd(); + var n, t = x.clean(), + e = M.buffer(), + r = e.length; + if (v.pop(), p.push(v), v = null, r) + if (1 & t) { + n = e[0]; + var u, r = n.length - 1, + o = -1; + if (r > 0) { + for (b || (i.polygonStart(), b = !0), i.lineStart(); ++o < r;) i.point((u = n[o])[0], u[1]); + i.lineEnd() + } + } else r > 1 && 2 & t && e.push(e.pop().concat(e.shift())), g.push(e.filter(Te)) + } + var g, p, v, d = t(i), + m = u.invert(r[0], r[1]), + y = { + point: o, + lineStart: c, + lineEnd: l, + polygonStart: function() { + y.point = s, y.lineStart = f, y.lineEnd = h, g = [], p = [] + }, + polygonEnd: function() { + y.point = o, y.lineStart = c, y.lineEnd = l, g = ta.merge(g); + var n = Fe(m, p); + g.length ? (b || (i.polygonStart(), b = !0), Ce(g, De, n, e, i)) : n && (b || (i.polygonStart(), b = !0), i.lineStart(), e(null, null, 1, i), i.lineEnd()), b && (i.polygonEnd(), b = !1), g = p = null + }, + sphere: function() { + i.polygonStart(), i.lineStart(), e(null, null, 1, i), i.lineEnd(), i.polygonEnd() + } + }, + M = Re(), + x = t(M), + b = !1; + return y + } + } + + function Te(n) { + return n.length > 1 + } + + function Re() { + var n, t = []; + return { + lineStart: function() { + t.push(n = []) + }, + point: function(t, e) { + n.push([t, e]) + }, + lineEnd: b, + buffer: function() { + var e = t; + return t = [], n = null, e + }, + rejoin: function() { + t.length > 1 && t.push(t.pop().concat(t.shift())) + } + } + } + + function De(n, t) { + return ((n = n.x)[0] < 0 ? n[1] - Ra - Ca : Ra - n[1]) - ((t = t.x)[0] < 0 ? t[1] - Ra - Ca : Ra - t[1]) + } + + function Pe(n) { + var t, e = 0 / 0, + r = 0 / 0, + u = 0 / 0; + return { + lineStart: function() { + n.lineStart(), t = 1 + }, + point: function(i, o) { + var a = i > 0 ? qa : -qa, + c = ga(i - e); + ga(c - qa) < Ca ? (n.point(e, r = (r + o) / 2 > 0 ? Ra : -Ra), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), n.point(i, r), t = 0) : u !== a && c >= qa && (ga(e - u) < Ca && (e -= u * Ca), ga(i - a) < Ca && (i -= a * Ca), r = Ue(e, r, i, o), n.point(u, r), n.lineEnd(), n.lineStart(), n.point(a, r), t = 0), n.point(e = i, r = o), u = a + }, + lineEnd: function() { + n.lineEnd(), e = r = 0 / 0 + }, + clean: function() { + return 2 - t + } + } + } + + function Ue(n, t, e, r) { + var u, i, o = Math.sin(n - e); + return ga(o) > Ca ? Math.atan((Math.sin(t) * (i = Math.cos(r)) * Math.sin(e) - Math.sin(r) * (u = Math.cos(t)) * Math.sin(n)) / (u * i * o)) : (t + r) / 2 + } + + function je(n, t, e, r) { + var u; + if (null == n) u = e * Ra, r.point(-qa, u), r.point(0, u), r.point(qa, u), r.point(qa, 0), r.point(qa, -u), r.point(0, -u), r.point(-qa, -u), r.point(-qa, 0), r.point(-qa, u); + else if (ga(n[0] - t[0]) > Ca) { + var i = n[0] < t[0] ? qa : -qa; + u = e * i / 2, r.point(-i, u), r.point(0, u), r.point(i, u) + } else r.point(t[0], t[1]) + } + + function Fe(n, t) { + var e = n[0], + r = n[1], + u = [Math.sin(e), -Math.cos(e), 0], + i = 0, + o = 0; + yc.reset(); + for (var a = 0, c = t.length; c > a; ++a) { + var l = t[a], + s = l.length; + if (s) + for (var f = l[0], h = f[0], g = f[1] / 2 + qa / 4, p = Math.sin(g), v = Math.cos(g), d = 1;;) { + d === s && (d = 0), n = l[d]; + var m = n[0], + y = n[1] / 2 + qa / 4, + M = Math.sin(y), + x = Math.cos(y), + b = m - h, + _ = b >= 0 ? 1 : -1, + w = _ * b, + S = w > qa, + k = p * M; + if (yc.add(Math.atan2(k * _ * Math.sin(w), v * x + k * Math.cos(w))), i += S ? b + _ * La : b, S ^ h >= e ^ m >= e) { + var E = de(pe(f), pe(n)); + Me(E); + var A = de(u, E); + Me(A); + var N = (S ^ b >= 0 ? -1 : 1) * tt(A[2]); + (r > N || r === N && (E[0] || E[1])) && (o += S ^ b >= 0 ? 1 : -1) + } + if (!d++) break; + h = m, p = M, v = x, f = n + } + } + return (-Ca > i || Ca > i && 0 > yc) ^ 1 & o + } + + function He(n) { + function t(n, t) { + return Math.cos(n) * Math.cos(t) > i + } + + function e(n) { + var e, i, c, l, s; + return { + lineStart: function() { + l = c = !1, s = 1 + }, + point: function(f, h) { + var g, p = [f, h], + v = t(f, h), + d = o ? v ? 0 : u(f, h) : v ? u(f + (0 > f ? qa : -qa), h) : 0; + if (!e && (l = c = v) && n.lineStart(), v !== c && (g = r(e, p), (be(e, g) || be(p, g)) && (p[0] += Ca, p[1] += Ca, v = t(p[0], p[1]))), v !== c) s = 0, v ? (n.lineStart(), g = r(p, e), n.point(g[0], g[1])) : (g = r(e, p), n.point(g[0], g[1]), n.lineEnd()), e = g; + else if (a && e && o ^ v) { + var m; + d & i || !(m = r(p, e, !0)) || (s = 0, o ? (n.lineStart(), n.point(m[0][0], m[0][1]), n.point(m[1][0], m[1][1]), n.lineEnd()) : (n.point(m[1][0], m[1][1]), n.lineEnd(), n.lineStart(), n.point(m[0][0], m[0][1]))) + }!v || e && be(e, p) || n.point(p[0], p[1]), e = p, c = v, i = d + }, + lineEnd: function() { + c && n.lineEnd(), e = null + }, + clean: function() { + return s | (l && c) << 1 + } + } + } + + function r(n, t, e) { + var r = pe(n), + u = pe(t), + o = [1, 0, 0], + a = de(r, u), + c = ve(a, a), + l = a[0], + s = c - l * l; + if (!s) return !e && n; + var f = i * c / s, + h = -i * l / s, + g = de(o, a), + p = ye(o, f), + v = ye(a, h); + me(p, v); + var d = g, + m = ve(p, d), + y = ve(d, d), + M = m * m - y * (ve(p, p) - 1); + if (!(0 > M)) { + var x = Math.sqrt(M), + b = ye(d, (-m - x) / y); + if (me(b, p), b = xe(b), !e) return b; + var _, w = n[0], + S = t[0], + k = n[1], + E = t[1]; + w > S && (_ = w, w = S, S = _); + var A = S - w, + N = ga(A - qa) < Ca, + C = N || Ca > A; + if (!N && k > E && (_ = k, k = E, E = _), C ? N ? k + E > 0 ^ b[1] < (ga(b[0] - w) < Ca ? k : E) : k <= b[1] && b[1] <= E : A > qa ^ (w <= b[0] && b[0] <= S)) { + var z = ye(d, (-m + x) / y); + return me(z, p), [b, xe(z)] + } + } + } + + function u(t, e) { + var r = o ? n : qa - n, + u = 0; + return -r > t ? u |= 1 : t > r && (u |= 2), -r > e ? u |= 4 : e > r && (u |= 8), u + } + var i = Math.cos(n), + o = i > 0, + a = ga(i) > Ca, + c = gr(n, 6 * Da); + return Le(t, e, c, o ? [0, -n] : [-qa, n - qa]) + } + + function Oe(n, t, e, r) { + return function(u) { + var i, o = u.a, + a = u.b, + c = o.x, + l = o.y, + s = a.x, + f = a.y, + h = 0, + g = 1, + p = s - c, + v = f - l; + if (i = n - c, p || !(i > 0)) { + if (i /= p, 0 > p) { + if (h > i) return; + g > i && (g = i) + } else if (p > 0) { + if (i > g) return; + i > h && (h = i) + } + if (i = e - c, p || !(0 > i)) { + if (i /= p, 0 > p) { + if (i > g) return; + i > h && (h = i) + } else if (p > 0) { + if (h > i) return; + g > i && (g = i) + } + if (i = t - l, v || !(i > 0)) { + if (i /= v, 0 > v) { + if (h > i) return; + g > i && (g = i) + } else if (v > 0) { + if (i > g) return; + i > h && (h = i) + } + if (i = r - l, v || !(0 > i)) { + if (i /= v, 0 > v) { + if (i > g) return; + i > h && (h = i) + } else if (v > 0) { + if (h > i) return; + g > i && (g = i) + } + return h > 0 && (u.a = { + x: c + h * p, + y: l + h * v + }), 1 > g && (u.b = { + x: c + g * p, + y: l + g * v + }), u + } + } + } + } + } + } + + function Ie(n, t, e, r) { + function u(r, u) { + return ga(r[0] - n) < Ca ? u > 0 ? 0 : 3 : ga(r[0] - e) < Ca ? u > 0 ? 2 : 1 : ga(r[1] - t) < Ca ? u > 0 ? 1 : 0 : u > 0 ? 3 : 2 + } + + function i(n, t) { + return o(n.x, t.x) + } + + function o(n, t) { + var e = u(n, 1), + r = u(t, 1); + return e !== r ? e - r : 0 === e ? t[1] - n[1] : 1 === e ? n[0] - t[0] : 2 === e ? n[1] - t[1] : t[0] - n[0] + } + return function(a) { + function c(n) { + for (var t = 0, e = d.length, r = n[1], u = 0; e > u; ++u) + for (var i, o = 1, a = d[u], c = a.length, l = a[0]; c > o; ++o) i = a[o], l[1] <= r ? i[1] > r && Q(l, i, n) > 0 && ++t : i[1] <= r && Q(l, i, n) < 0 && --t, l = i; + return 0 !== t + } + + function l(i, a, c, l) { + var s = 0, + f = 0; + if (null == i || (s = u(i, c)) !== (f = u(a, c)) || o(i, a) < 0 ^ c > 0) { + do l.point(0 === s || 3 === s ? n : e, s > 1 ? r : t); while ((s = (s + c + 4) % 4) !== f) + } else l.point(a[0], a[1]) + } + + function s(u, i) { + return u >= n && e >= u && i >= t && r >= i + } + + function f(n, t) { + s(n, t) && a.point(n, t) + } + + function h() { + C.point = p, d && d.push(m = []), S = !0, w = !1, b = _ = 0 / 0 + } + + function g() { + v && (p(y, M), x && w && A.rejoin(), v.push(A.buffer())), C.point = f, w && a.lineEnd() + } + + function p(n, t) { + n = Math.max(-Tc, Math.min(Tc, n)), t = Math.max(-Tc, Math.min(Tc, t)); + var e = s(n, t); + if (d && m.push([n, t]), S) y = n, M = t, x = e, S = !1, e && (a.lineStart(), a.point(n, t)); + else if (e && w) a.point(n, t); + else { + var r = { + a: { + x: b, + y: _ + }, + b: { + x: n, + y: t + } + }; + N(r) ? (w || (a.lineStart(), a.point(r.a.x, r.a.y)), a.point(r.b.x, r.b.y), e || a.lineEnd(), k = !1) : e && (a.lineStart(), a.point(n, t), k = !1) + } + b = n, _ = t, w = e + } + var v, d, m, y, M, x, b, _, w, S, k, E = a, + A = Re(), + N = Oe(n, t, e, r), + C = { + point: f, + lineStart: h, + lineEnd: g, + polygonStart: function() { + a = A, v = [], d = [], k = !0 + }, + polygonEnd: function() { + a = E, v = ta.merge(v); + var t = c([n, r]), + e = k && t, + u = v.length; + (e || u) && (a.polygonStart(), e && (a.lineStart(), l(null, null, 1, a), a.lineEnd()), u && Ce(v, i, t, l, a), a.polygonEnd()), v = d = m = null + } + }; + return C + } + } + + function Ye(n) { + var t = 0, + e = qa / 3, + r = ir(n), + u = r(t, e); + return u.parallels = function(n) { + return arguments.length ? r(t = n[0] * qa / 180, e = n[1] * qa / 180) : [t / qa * 180, e / qa * 180] + }, u + } + + function Ze(n, t) { + function e(n, t) { + var e = Math.sqrt(i - 2 * u * Math.sin(t)) / u; + return [e * Math.sin(n *= u), o - e * Math.cos(n)] + } + var r = Math.sin(n), + u = (r + Math.sin(t)) / 2, + i = 1 + r * (2 * u - r), + o = Math.sqrt(i) / u; + return e.invert = function(n, t) { + var e = o - t; + return [Math.atan2(n, e) / u, tt((i - (n * n + e * e) * u * u) / (2 * u))] + }, e + } + + function Ve() { + function n(n, t) { + Dc += u * n - r * t, r = n, u = t + } + var t, e, r, u; + Hc.point = function(i, o) { + Hc.point = n, t = r = i, e = u = o + }, Hc.lineEnd = function() { + n(t, e) + } + } + + function Xe(n, t) { + Pc > n && (Pc = n), n > jc && (jc = n), Uc > t && (Uc = t), t > Fc && (Fc = t) + } + + function $e() { + function n(n, t) { + o.push("M", n, ",", t, i) + } + + function t(n, t) { + o.push("M", n, ",", t), a.point = e + } + + function e(n, t) { + o.push("L", n, ",", t) + } + + function r() { + a.point = n + } + + function u() { + o.push("Z") + } + var i = Be(4.5), + o = [], + a = { + point: n, + lineStart: function() { + a.point = t + }, + lineEnd: r, + polygonStart: function() { + a.lineEnd = u + }, + polygonEnd: function() { + a.lineEnd = r, a.point = n + }, + pointRadius: function(n) { + return i = Be(n), a + }, + result: function() { + if (o.length) { + var n = o.join(""); + return o = [], n + } + } + }; + return a + } + + function Be(n) { + return "m0," + n + "a" + n + "," + n + " 0 1,1 0," + -2 * n + "a" + n + "," + n + " 0 1,1 0," + 2 * n + "z" + } + + function We(n, t) { + _c += n, wc += t, ++Sc + } + + function Je() { + function n(n, r) { + var u = n - t, + i = r - e, + o = Math.sqrt(u * u + i * i); + kc += o * (t + n) / 2, Ec += o * (e + r) / 2, Ac += o, We(t = n, e = r) + } + var t, e; + Ic.point = function(r, u) { + Ic.point = n, We(t = r, e = u) + } + } + + function Ge() { + Ic.point = We + } + + function Ke() { + function n(n, t) { + var e = n - r, + i = t - u, + o = Math.sqrt(e * e + i * i); + kc += o * (r + n) / 2, Ec += o * (u + t) / 2, Ac += o, o = u * n - r * t, Nc += o * (r + n), Cc += o * (u + t), zc += 3 * o, We(r = n, u = t) + } + var t, e, r, u; + Ic.point = function(i, o) { + Ic.point = n, We(t = r = i, e = u = o) + }, Ic.lineEnd = function() { + n(t, e) + } + } + + function Qe(n) { + function t(t, e) { + n.moveTo(t + o, e), n.arc(t, e, o, 0, La) + } + + function e(t, e) { + n.moveTo(t, e), a.point = r + } + + function r(t, e) { + n.lineTo(t, e) + } + + function u() { + a.point = t + } + + function i() { + n.closePath() + } + var o = 4.5, + a = { + point: t, + lineStart: function() { + a.point = e + }, + lineEnd: u, + polygonStart: function() { + a.lineEnd = i + }, + polygonEnd: function() { + a.lineEnd = u, a.point = t + }, + pointRadius: function(n) { + return o = n, a + }, + result: b + }; + return a + } + + function nr(n) { + function t(n) { + return (a ? r : e)(n) + } + + function e(t) { + return rr(t, function(e, r) { + e = n(e, r), t.point(e[0], e[1]) + }) + } + + function r(t) { + function e(e, r) { + e = n(e, r), t.point(e[0], e[1]) + } + + function r() { + M = 0 / 0, S.point = i, t.lineStart() + } + + function i(e, r) { + var i = pe([e, r]), + o = n(e, r); + u(M, x, y, b, _, w, M = o[0], x = o[1], y = e, b = i[0], _ = i[1], w = i[2], a, t), t.point(M, x) + } + + function o() { + S.point = e, t.lineEnd() + } + + function c() { + r(), S.point = l, S.lineEnd = s + } + + function l(n, t) { + i(f = n, h = t), g = M, p = x, v = b, d = _, m = w, S.point = i + } + + function s() { + u(M, x, y, b, _, w, g, p, f, v, d, m, a, t), S.lineEnd = o, o() + } + var f, h, g, p, v, d, m, y, M, x, b, _, w, S = { + point: e, + lineStart: r, + lineEnd: o, + polygonStart: function() { + t.polygonStart(), S.lineStart = c + }, + polygonEnd: function() { + t.polygonEnd(), S.lineStart = r + } + }; + return S + } + + function u(t, e, r, a, c, l, s, f, h, g, p, v, d, m) { + var y = s - t, + M = f - e, + x = y * y + M * M; + if (x > 4 * i && d--) { + var b = a + g, + _ = c + p, + w = l + v, + S = Math.sqrt(b * b + _ * _ + w * w), + k = Math.asin(w /= S), + E = ga(ga(w) - 1) < Ca || ga(r - h) < Ca ? (r + h) / 2 : Math.atan2(_, b), + A = n(E, k), + N = A[0], + C = A[1], + z = N - t, + q = C - e, + L = M * z - y * q; + (L * L / x > i || ga((y * z + M * q) / x - .5) > .3 || o > a * g + c * p + l * v) && (u(t, e, r, a, c, l, N, C, E, b /= S, _ /= S, w, d, m), m.point(N, C), u(N, C, E, b, _, w, s, f, h, g, p, v, d, m)) + } + } + var i = .5, + o = Math.cos(30 * Da), + a = 16; + return t.precision = function(n) { + return arguments.length ? (a = (i = n * n) > 0 && 16, t) : Math.sqrt(i) + }, t + } + + function tr(n) { + var t = nr(function(t, e) { + return n([t * Pa, e * Pa]) + }); + return function(n) { + return or(t(n)) + } + } + + function er(n) { + this.stream = n + } + + function rr(n, t) { + return { + point: t, + sphere: function() { + n.sphere() + }, + lineStart: function() { + n.lineStart() + }, + lineEnd: function() { + n.lineEnd() + }, + polygonStart: function() { + n.polygonStart() + }, + polygonEnd: function() { + n.polygonEnd() + } + } + } + + function ur(n) { + return ir(function() { + return n + })() + } + + function ir(n) { + function t(n) { + return n = a(n[0] * Da, n[1] * Da), [n[0] * h + c, l - n[1] * h] + } + + function e(n) { + return n = a.invert((n[0] - c) / h, (l - n[1]) / h), n && [n[0] * Pa, n[1] * Pa] + } + + function r() { + a = Ae(o = lr(m, M, x), i); + var n = i(v, d); + return c = g - n[0] * h, l = p + n[1] * h, u() + } + + function u() { + return s && (s.valid = !1, s = null), t + } + var i, o, a, c, l, s, f = nr(function(n, t) { + return n = i(n, t), [n[0] * h + c, l - n[1] * h] + }), + h = 150, + g = 480, + p = 250, + v = 0, + d = 0, + m = 0, + M = 0, + x = 0, + b = Lc, + _ = y, + w = null, + S = null; + return t.stream = function(n) { + return s && (s.valid = !1), s = or(b(o, f(_(n)))), s.valid = !0, s + }, t.clipAngle = function(n) { + return arguments.length ? (b = null == n ? (w = n, Lc) : He((w = +n) * Da), u()) : w + }, t.clipExtent = function(n) { + return arguments.length ? (S = n, _ = n ? Ie(n[0][0], n[0][1], n[1][0], n[1][1]) : y, u()) : S + }, t.scale = function(n) { + return arguments.length ? (h = +n, r()) : h + }, t.translate = function(n) { + return arguments.length ? (g = +n[0], p = +n[1], r()) : [g, p] + }, t.center = function(n) { + return arguments.length ? (v = n[0] % 360 * Da, d = n[1] % 360 * Da, r()) : [v * Pa, d * Pa] + }, t.rotate = function(n) { + return arguments.length ? (m = n[0] % 360 * Da, M = n[1] % 360 * Da, x = n.length > 2 ? n[2] % 360 * Da : 0, r()) : [m * Pa, M * Pa, x * Pa] + }, ta.rebind(t, f, "precision"), + function() { + return i = n.apply(this, arguments), t.invert = i.invert && e, r() + } + } + + function or(n) { + return rr(n, function(t, e) { + n.point(t * Da, e * Da) + }) + } + + function ar(n, t) { + return [n, t] + } + + function cr(n, t) { + return [n > qa ? n - La : -qa > n ? n + La : n, t] + } + + function lr(n, t, e) { + return n ? t || e ? Ae(fr(n), hr(t, e)) : fr(n) : t || e ? hr(t, e) : cr + } + + function sr(n) { + return function(t, e) { + return t += n, [t > qa ? t - La : -qa > t ? t + La : t, e] + } + } + + function fr(n) { + var t = sr(n); + return t.invert = sr(-n), t + } + + function hr(n, t) { + function e(n, t) { + var e = Math.cos(t), + a = Math.cos(n) * e, + c = Math.sin(n) * e, + l = Math.sin(t), + s = l * r + a * u; + return [Math.atan2(c * i - s * o, a * r - l * u), tt(s * i + c * o)] + } + var r = Math.cos(n), + u = Math.sin(n), + i = Math.cos(t), + o = Math.sin(t); + return e.invert = function(n, t) { + var e = Math.cos(t), + a = Math.cos(n) * e, + c = Math.sin(n) * e, + l = Math.sin(t), + s = l * i - c * o; + return [Math.atan2(c * i + l * o, a * r + s * u), tt(s * r - a * u)] + }, e + } + + function gr(n, t) { + var e = Math.cos(n), + r = Math.sin(n); + return function(u, i, o, a) { + var c = o * t; + null != u ? (u = pr(e, u), i = pr(e, i), (o > 0 ? i > u : u > i) && (u += o * La)) : (u = n + o * La, i = n - .5 * c); + for (var l, s = u; o > 0 ? s > i : i > s; s -= c) a.point((l = xe([e, -r * Math.cos(s), -r * Math.sin(s)]))[0], l[1]) + } + } + + function pr(n, t) { + var e = pe(t); + e[0] -= n, Me(e); + var r = nt(-e[1]); + return ((-e[2] < 0 ? -r : r) + 2 * Math.PI - Ca) % (2 * Math.PI) + } + + function vr(n, t, e) { + var r = ta.range(n, t - Ca, e).concat(t); + return function(n) { + return r.map(function(t) { + return [n, t] + }) + } + } + + function dr(n, t, e) { + var r = ta.range(n, t - Ca, e).concat(t); + return function(n) { + return r.map(function(t) { + return [t, n] + }) + } + } + + function mr(n) { + return n.source + } + + function yr(n) { + return n.target + } + + function Mr(n, t, e, r) { + var u = Math.cos(t), + i = Math.sin(t), + o = Math.cos(r), + a = Math.sin(r), + c = u * Math.cos(n), + l = u * Math.sin(n), + s = o * Math.cos(e), + f = o * Math.sin(e), + h = 2 * Math.asin(Math.sqrt(it(r - t) + u * o * it(e - n))), + g = 1 / Math.sin(h), + p = h ? function(n) { + var t = Math.sin(n *= h) * g, + e = Math.sin(h - n) * g, + r = e * c + t * s, + u = e * l + t * f, + o = e * i + t * a; + return [Math.atan2(u, r) * Pa, Math.atan2(o, Math.sqrt(r * r + u * u)) * Pa] + } : function() { + return [n * Pa, t * Pa] + }; + return p.distance = h, p + } + + function xr() { + function n(n, u) { + var i = Math.sin(u *= Da), + o = Math.cos(u), + a = ga((n *= Da) - t), + c = Math.cos(a); + Yc += Math.atan2(Math.sqrt((a = o * Math.sin(a)) * a + (a = r * i - e * o * c) * a), e * i + r * o * c), t = n, e = i, r = o + } + var t, e, r; + Zc.point = function(u, i) { + t = u * Da, e = Math.sin(i *= Da), r = Math.cos(i), Zc.point = n + }, Zc.lineEnd = function() { + Zc.point = Zc.lineEnd = b + } + } + + function br(n, t) { + function e(t, e) { + var r = Math.cos(t), + u = Math.cos(e), + i = n(r * u); + return [i * u * Math.sin(t), i * Math.sin(e)] + } + return e.invert = function(n, e) { + var r = Math.sqrt(n * n + e * e), + u = t(r), + i = Math.sin(u), + o = Math.cos(u); + return [Math.atan2(n * i, r * o), Math.asin(r && e * i / r)] + }, e + } + + function _r(n, t) { + function e(n, t) { + o > 0 ? -Ra + Ca > t && (t = -Ra + Ca) : t > Ra - Ca && (t = Ra - Ca); + var e = o / Math.pow(u(t), i); + return [e * Math.sin(i * n), o - e * Math.cos(i * n)] + } + var r = Math.cos(n), + u = function(n) { + return Math.tan(qa / 4 + n / 2) + }, + i = n === t ? Math.sin(n) : Math.log(r / Math.cos(t)) / Math.log(u(t) / u(n)), + o = r * Math.pow(u(n), i) / i; + return i ? (e.invert = function(n, t) { + var e = o - t, + r = K(i) * Math.sqrt(n * n + e * e); + return [Math.atan2(n, e) / i, 2 * Math.atan(Math.pow(o / r, 1 / i)) - Ra] + }, e) : Sr + } + + function wr(n, t) { + function e(n, t) { + var e = i - t; + return [e * Math.sin(u * n), i - e * Math.cos(u * n)] + } + var r = Math.cos(n), + u = n === t ? Math.sin(n) : (r - Math.cos(t)) / (t - n), + i = r / u + n; + return ga(u) < Ca ? ar : (e.invert = function(n, t) { + var e = i - t; + return [Math.atan2(n, e) / u, i - K(u) * Math.sqrt(n * n + e * e)] + }, e) + } + + function Sr(n, t) { + return [n, Math.log(Math.tan(qa / 4 + t / 2))] + } + + function kr(n) { + var t, e = ur(n), + r = e.scale, + u = e.translate, + i = e.clipExtent; + return e.scale = function() { + var n = r.apply(e, arguments); + return n === e ? t ? e.clipExtent(null) : e : n + }, e.translate = function() { + var n = u.apply(e, arguments); + return n === e ? t ? e.clipExtent(null) : e : n + }, e.clipExtent = function(n) { + var o = i.apply(e, arguments); + if (o === e) { + if (t = null == n) { + var a = qa * r(), + c = u(); + i([ + [c[0] - a, c[1] - a], + [c[0] + a, c[1] + a] + ]) + } + } else t && (o = null); + return o + }, e.clipExtent(null) + } + + function Er(n, t) { + return [Math.log(Math.tan(qa / 4 + t / 2)), -n] + } + + function Ar(n) { + return n[0] + } + + function Nr(n) { + return n[1] + } + + function Cr(n) { + for (var t = n.length, e = [0, 1], r = 2, u = 2; t > u; u++) { + for (; r > 1 && Q(n[e[r - 2]], n[e[r - 1]], n[u]) <= 0;) --r; + e[r++] = u + } + return e.slice(0, r) + } + + function zr(n, t) { + return n[0] - t[0] || n[1] - t[1] + } + + function qr(n, t, e) { + return (e[0] - t[0]) * (n[1] - t[1]) < (e[1] - t[1]) * (n[0] - t[0]) + } + + function Lr(n, t, e, r) { + var u = n[0], + i = e[0], + o = t[0] - u, + a = r[0] - i, + c = n[1], + l = e[1], + s = t[1] - c, + f = r[1] - l, + h = (a * (c - l) - f * (u - i)) / (f * o - a * s); + return [u + h * o, c + h * s] + } + + function Tr(n) { + var t = n[0], + e = n[n.length - 1]; + return !(t[0] - e[0] || t[1] - e[1]) + } + + function Rr() { + tu(this), this.edge = this.site = this.circle = null + } + + function Dr(n) { + var t = el.pop() || new Rr; + return t.site = n, t + } + + function Pr(n) { + Xr(n), Qc.remove(n), el.push(n), tu(n) + } + + function Ur(n) { + var t = n.circle, + e = t.x, + r = t.cy, + u = { + x: e, + y: r + }, + i = n.P, + o = n.N, + a = [n]; + Pr(n); + for (var c = i; c.circle && ga(e - c.circle.x) < Ca && ga(r - c.circle.cy) < Ca;) i = c.P, a.unshift(c), Pr(c), c = i; + a.unshift(c), Xr(c); + for (var l = o; l.circle && ga(e - l.circle.x) < Ca && ga(r - l.circle.cy) < Ca;) o = l.N, a.push(l), Pr(l), l = o; + a.push(l), Xr(l); + var s, f = a.length; + for (s = 1; f > s; ++s) l = a[s], c = a[s - 1], Kr(l.edge, c.site, l.site, u); + c = a[0], l = a[f - 1], l.edge = Jr(c.site, l.site, null, u), Vr(c), Vr(l) + } + + function jr(n) { + for (var t, e, r, u, i = n.x, o = n.y, a = Qc._; a;) + if (r = Fr(a, o) - i, r > Ca) a = a.L; + else { + if (u = i - Hr(a, o), !(u > Ca)) { + r > -Ca ? (t = a.P, e = a) : u > -Ca ? (t = a, e = a.N) : t = e = a; + break + } + if (!a.R) { + t = a; + break + } + a = a.R + } var c = Dr(n); + if (Qc.insert(t, c), t || e) { + if (t === e) return Xr(t), e = Dr(t.site), Qc.insert(c, e), c.edge = e.edge = Jr(t.site, c.site), Vr(t), void Vr(e); + if (!e) return void(c.edge = Jr(t.site, c.site)); + Xr(t), Xr(e); + var l = t.site, + s = l.x, + f = l.y, + h = n.x - s, + g = n.y - f, + p = e.site, + v = p.x - s, + d = p.y - f, + m = 2 * (h * d - g * v), + y = h * h + g * g, + M = v * v + d * d, + x = { + x: (d * y - g * M) / m + s, + y: (h * M - v * y) / m + f + }; + Kr(e.edge, l, p, x), c.edge = Jr(l, n, null, x), e.edge = Jr(n, p, null, x), Vr(t), Vr(e) + } + } + + function Fr(n, t) { + var e = n.site, + r = e.x, + u = e.y, + i = u - t; + if (!i) return r; + var o = n.P; + if (!o) return -1 / 0; + e = o.site; + var a = e.x, + c = e.y, + l = c - t; + if (!l) return a; + var s = a - r, + f = 1 / i - 1 / l, + h = s / l; + return f ? (-h + Math.sqrt(h * h - 2 * f * (s * s / (-2 * l) - c + l / 2 + u - i / 2))) / f + r : (r + a) / 2 + } + + function Hr(n, t) { + var e = n.N; + if (e) return Fr(e, t); + var r = n.site; + return r.y === t ? r.x : 1 / 0 + } + + function Or(n) { + this.site = n, this.edges = [] + } + + function Ir(n) { + for (var t, e, r, u, i, o, a, c, l, s, f = n[0][0], h = n[1][0], g = n[0][1], p = n[1][1], v = Kc, d = v.length; d--;) + if (i = v[d], i && i.prepare()) + for (a = i.edges, c = a.length, o = 0; c > o;) s = a[o].end(), r = s.x, u = s.y, l = a[++o % c].start(), t = l.x, e = l.y, (ga(r - t) > Ca || ga(u - e) > Ca) && (a.splice(o, 0, new Qr(Gr(i.site, s, ga(r - f) < Ca && p - u > Ca ? { + x: f, + y: ga(t - f) < Ca ? e : p + } : ga(u - p) < Ca && h - r > Ca ? { + x: ga(e - p) < Ca ? t : h, + y: p + } : ga(r - h) < Ca && u - g > Ca ? { + x: h, + y: ga(t - h) < Ca ? e : g + } : ga(u - g) < Ca && r - f > Ca ? { + x: ga(e - g) < Ca ? t : f, + y: g + } : null), i.site, null)), ++c) + } + + function Yr(n, t) { + return t.angle - n.angle + } + + function Zr() { + tu(this), this.x = this.y = this.arc = this.site = this.cy = null + } + + function Vr(n) { + var t = n.P, + e = n.N; + if (t && e) { + var r = t.site, + u = n.site, + i = e.site; + if (r !== i) { + var o = u.x, + a = u.y, + c = r.x - o, + l = r.y - a, + s = i.x - o, + f = i.y - a, + h = 2 * (c * f - l * s); + if (!(h >= -za)) { + var g = c * c + l * l, + p = s * s + f * f, + v = (f * g - l * p) / h, + d = (c * p - s * g) / h, + f = d + a, + m = rl.pop() || new Zr; + m.arc = n, m.site = u, m.x = v + o, m.y = f + Math.sqrt(v * v + d * d), m.cy = f, n.circle = m; + for (var y = null, M = tl._; M;) + if (m.y < M.y || m.y === M.y && m.x <= M.x) { + if (!M.L) { + y = M.P; + break + } + M = M.L + } else { + if (!M.R) { + y = M; + break + } + M = M.R + } tl.insert(y, m), y || (nl = m) + } + } + } + } + + function Xr(n) { + var t = n.circle; + t && (t.P || (nl = t.N), tl.remove(t), rl.push(t), tu(t), n.circle = null) + } + + function $r(n) { + for (var t, e = Gc, r = Oe(n[0][0], n[0][1], n[1][0], n[1][1]), u = e.length; u--;) t = e[u], (!Br(t, n) || !r(t) || ga(t.a.x - t.b.x) < Ca && ga(t.a.y - t.b.y) < Ca) && (t.a = t.b = null, e.splice(u, 1)) + } + + function Br(n, t) { + var e = n.b; + if (e) return !0; + var r, u, i = n.a, + o = t[0][0], + a = t[1][0], + c = t[0][1], + l = t[1][1], + s = n.l, + f = n.r, + h = s.x, + g = s.y, + p = f.x, + v = f.y, + d = (h + p) / 2, + m = (g + v) / 2; + if (v === g) { + if (o > d || d >= a) return; + if (h > p) { + if (i) { + if (i.y >= l) return + } else i = { + x: d, + y: c + }; + e = { + x: d, + y: l + } + } else { + if (i) { + if (i.y < c) return + } else i = { + x: d, + y: l + }; + e = { + x: d, + y: c + } + } + } else if (r = (h - p) / (v - g), u = m - r * d, -1 > r || r > 1) + if (h > p) { + if (i) { + if (i.y >= l) return + } else i = { + x: (c - u) / r, + y: c + }; + e = { + x: (l - u) / r, + y: l + } + } else { + if (i) { + if (i.y < c) return + } else i = { + x: (l - u) / r, + y: l + }; + e = { + x: (c - u) / r, + y: c + } + } + else if (v > g) { + if (i) { + if (i.x >= a) return + } else i = { + x: o, + y: r * o + u + }; + e = { + x: a, + y: r * a + u + } + } else { + if (i) { + if (i.x < o) return + } else i = { + x: a, + y: r * a + u + }; + e = { + x: o, + y: r * o + u + } + } + return n.a = i, n.b = e, !0 + } + + function Wr(n, t) { + this.l = n, this.r = t, this.a = this.b = null + } + + function Jr(n, t, e, r) { + var u = new Wr(n, t); + return Gc.push(u), e && Kr(u, n, t, e), r && Kr(u, t, n, r), Kc[n.i].edges.push(new Qr(u, n, t)), Kc[t.i].edges.push(new Qr(u, t, n)), u + } + + function Gr(n, t, e) { + var r = new Wr(n, null); + return r.a = t, r.b = e, Gc.push(r), r + } + + function Kr(n, t, e, r) { + n.a || n.b ? n.l === e ? n.b = r : n.a = r : (n.a = r, n.l = t, n.r = e) + } + + function Qr(n, t, e) { + var r = n.a, + u = n.b; + this.edge = n, this.site = t, this.angle = e ? Math.atan2(e.y - t.y, e.x - t.x) : n.l === t ? Math.atan2(u.x - r.x, r.y - u.y) : Math.atan2(r.x - u.x, u.y - r.y) + } + + function nu() { + this._ = null + } + + function tu(n) { + n.U = n.C = n.L = n.R = n.P = n.N = null + } + + function eu(n, t) { + var e = t, + r = t.R, + u = e.U; + u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.R = r.L, e.R && (e.R.U = e), r.L = e + } + + function ru(n, t) { + var e = t, + r = t.L, + u = e.U; + u ? u.L === e ? u.L = r : u.R = r : n._ = r, r.U = u, e.U = r, e.L = r.R, e.L && (e.L.U = e), r.R = e + } + + function uu(n) { + for (; n.L;) n = n.L; + return n + } + + function iu(n, t) { + var e, r, u, i = n.sort(ou).pop(); + for (Gc = [], Kc = new Array(n.length), Qc = new nu, tl = new nu;;) + if (u = nl, i && (!u || i.y < u.y || i.y === u.y && i.x < u.x))(i.x !== e || i.y !== r) && (Kc[i.i] = new Or(i), jr(i), e = i.x, r = i.y), i = n.pop(); + else { + if (!u) break; + Ur(u.arc) + } t && ($r(t), Ir(t)); + var o = { + cells: Kc, + edges: Gc + }; + return Qc = tl = Gc = Kc = null, o + } + + function ou(n, t) { + return t.y - n.y || t.x - n.x + } + + function au(n, t, e) { + return (n.x - e.x) * (t.y - n.y) - (n.x - t.x) * (e.y - n.y) + } + + function cu(n) { + return n.x + } + + function lu(n) { + return n.y + } + + function su() { + return { + leaf: !0, + nodes: [], + point: null, + x: null, + y: null + } + } + + function fu(n, t, e, r, u, i) { + if (!n(t, e, r, u, i)) { + var o = .5 * (e + u), + a = .5 * (r + i), + c = t.nodes; + c[0] && fu(n, c[0], e, r, o, a), c[1] && fu(n, c[1], o, r, u, a), c[2] && fu(n, c[2], e, a, o, i), c[3] && fu(n, c[3], o, a, u, i) + } + } + + function hu(n, t, e, r, u, i, o) { + var a, c = 1 / 0; + return function l(n, s, f, h, g) { + if (!(s > i || f > o || r > h || u > g)) { + if (p = n.point) { + var p, v = t - n.x, + d = e - n.y, + m = v * v + d * d; + if (c > m) { + var y = Math.sqrt(c = m); + r = t - y, u = e - y, i = t + y, o = e + y, a = p + } + } + for (var M = n.nodes, x = .5 * (s + h), b = .5 * (f + g), _ = t >= x, w = e >= b, S = w << 1 | _, k = S + 4; k > S; ++S) + if (n = M[3 & S]) switch (3 & S) { + case 0: + l(n, s, f, x, b); + break; + case 1: + l(n, x, f, h, b); + break; + case 2: + l(n, s, b, x, g); + break; + case 3: + l(n, x, b, h, g) + } + } + }(n, r, u, i, o), a + } + + function gu(n, t) { + n = ta.rgb(n), t = ta.rgb(t); + var e = n.r, + r = n.g, + u = n.b, + i = t.r - e, + o = t.g - r, + a = t.b - u; + return function(n) { + return "#" + xt(Math.round(e + i * n)) + xt(Math.round(r + o * n)) + xt(Math.round(u + a * n)) + } + } + + function pu(n, t) { + var e, r = {}, + u = {}; + for (e in n) e in t ? r[e] = mu(n[e], t[e]) : u[e] = n[e]; + for (e in t) e in n || (u[e] = t[e]); + return function(n) { + for (e in r) u[e] = r[e](n); + return u + } + } + + function vu(n, t) { + return n = +n, t = +t, + function(e) { + return n * (1 - e) + t * e + } + } + + function du(n, t) { + var e, r, u, i = il.lastIndex = ol.lastIndex = 0, + o = -1, + a = [], + c = []; + for (n += "", t += ""; + (e = il.exec(n)) && (r = ol.exec(t));)(u = r.index) > i && (u = t.slice(i, u), a[o] ? a[o] += u : a[++o] = u), (e = e[0]) === (r = r[0]) ? a[o] ? a[o] += r : a[++o] = r : (a[++o] = null, c.push({ + i: o, + x: vu(e, r) + })), i = ol.lastIndex; + return i < t.length && (u = t.slice(i), a[o] ? a[o] += u : a[++o] = u), a.length < 2 ? c[0] ? (t = c[0].x, function(n) { + return t(n) + "" + }) : function() { + return t + } : (t = c.length, function(n) { + for (var e, r = 0; t > r; ++r) a[(e = c[r]).i] = e.x(n); + return a.join("") + }) + } + + function mu(n, t) { + for (var e, r = ta.interpolators.length; --r >= 0 && !(e = ta.interpolators[r](n, t));); + return e + } + + function yu(n, t) { + var e, r = [], + u = [], + i = n.length, + o = t.length, + a = Math.min(n.length, t.length); + for (e = 0; a > e; ++e) r.push(mu(n[e], t[e])); + for (; i > e; ++e) u[e] = n[e]; + for (; o > e; ++e) u[e] = t[e]; + return function(n) { + for (e = 0; a > e; ++e) u[e] = r[e](n); + return u + } + } + + function Mu(n) { + return function(t) { + return 0 >= t ? 0 : t >= 1 ? 1 : n(t) + } + } + + function xu(n) { + return function(t) { + return 1 - n(1 - t) + } + } + + function bu(n) { + return function(t) { + return .5 * (.5 > t ? n(2 * t) : 2 - n(2 - 2 * t)) + } + } + + function _u(n) { + return n * n + } + + function wu(n) { + return n * n * n + } + + function Su(n) { + if (0 >= n) return 0; + if (n >= 1) return 1; + var t = n * n, + e = t * n; + return 4 * (.5 > n ? e : 3 * (n - t) + e - .75) + } + + function ku(n) { + return function(t) { + return Math.pow(t, n) + } + } + + function Eu(n) { + return 1 - Math.cos(n * Ra) + } + + function Au(n) { + return Math.pow(2, 10 * (n - 1)) + } + + function Nu(n) { + return 1 - Math.sqrt(1 - n * n) + } + + function Cu(n, t) { + var e; + return arguments.length < 2 && (t = .45), arguments.length ? e = t / La * Math.asin(1 / n) : (n = 1, e = t / 4), + function(r) { + return 1 + n * Math.pow(2, -10 * r) * Math.sin((r - e) * La / t) + } + } + + function zu(n) { + return n || (n = 1.70158), + function(t) { + return t * t * ((n + 1) * t - n) + } + } + + function qu(n) { + return 1 / 2.75 > n ? 7.5625 * n * n : 2 / 2.75 > n ? 7.5625 * (n -= 1.5 / 2.75) * n + .75 : 2.5 / 2.75 > n ? 7.5625 * (n -= 2.25 / 2.75) * n + .9375 : 7.5625 * (n -= 2.625 / 2.75) * n + .984375 + } + + function Lu(n, t) { + n = ta.hcl(n), t = ta.hcl(t); + var e = n.h, + r = n.c, + u = n.l, + i = t.h - e, + o = t.c - r, + a = t.l - u; + return isNaN(o) && (o = 0, r = isNaN(r) ? t.c : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), + function(n) { + return st(e + i * n, r + o * n, u + a * n) + "" + } + } + + function Tu(n, t) { + n = ta.hsl(n), t = ta.hsl(t); + var e = n.h, + r = n.s, + u = n.l, + i = t.h - e, + o = t.s - r, + a = t.l - u; + return isNaN(o) && (o = 0, r = isNaN(r) ? t.s : r), isNaN(i) ? (i = 0, e = isNaN(e) ? t.h : e) : i > 180 ? i -= 360 : -180 > i && (i += 360), + function(n) { + return ct(e + i * n, r + o * n, u + a * n) + "" + } + } + + function Ru(n, t) { + n = ta.lab(n), t = ta.lab(t); + var e = n.l, + r = n.a, + u = n.b, + i = t.l - e, + o = t.a - r, + a = t.b - u; + return function(n) { + return ht(e + i * n, r + o * n, u + a * n) + "" + } + } + + function Du(n, t) { + return t -= n, + function(e) { + return Math.round(n + t * e) + } + } + + function Pu(n) { + var t = [n.a, n.b], + e = [n.c, n.d], + r = ju(t), + u = Uu(t, e), + i = ju(Fu(e, t, -u)) || 0; + t[0] * e[1] < e[0] * t[1] && (t[0] *= -1, t[1] *= -1, r *= -1, u *= -1), this.rotate = (r ? Math.atan2(t[1], t[0]) : Math.atan2(-e[0], e[1])) * Pa, this.translate = [n.e, n.f], this.scale = [r, i], this.skew = i ? Math.atan2(u, i) * Pa : 0 + } + + function Uu(n, t) { + return n[0] * t[0] + n[1] * t[1] + } + + function ju(n) { + var t = Math.sqrt(Uu(n, n)); + return t && (n[0] /= t, n[1] /= t), t + } + + function Fu(n, t, e) { + return n[0] += e * t[0], n[1] += e * t[1], n + } + + function Hu(n, t) { + var e, r = [], + u = [], + i = ta.transform(n), + o = ta.transform(t), + a = i.translate, + c = o.translate, + l = i.rotate, + s = o.rotate, + f = i.skew, + h = o.skew, + g = i.scale, + p = o.scale; + return a[0] != c[0] || a[1] != c[1] ? (r.push("translate(", null, ",", null, ")"), u.push({ + i: 1, + x: vu(a[0], c[0]) + }, { + i: 3, + x: vu(a[1], c[1]) + })) : r.push(c[0] || c[1] ? "translate(" + c + ")" : ""), l != s ? (l - s > 180 ? s += 360 : s - l > 180 && (l += 360), u.push({ + i: r.push(r.pop() + "rotate(", null, ")") - 2, + x: vu(l, s) + })) : s && r.push(r.pop() + "rotate(" + s + ")"), f != h ? u.push({ + i: r.push(r.pop() + "skewX(", null, ")") - 2, + x: vu(f, h) + }) : h && r.push(r.pop() + "skewX(" + h + ")"), g[0] != p[0] || g[1] != p[1] ? (e = r.push(r.pop() + "scale(", null, ",", null, ")"), u.push({ + i: e - 4, + x: vu(g[0], p[0]) + }, { + i: e - 2, + x: vu(g[1], p[1]) + })) : (1 != p[0] || 1 != p[1]) && r.push(r.pop() + "scale(" + p + ")"), e = u.length, + function(n) { + for (var t, i = -1; ++i < e;) r[(t = u[i]).i] = t.x(n); + return r.join("") + } + } + + function Ou(n, t) { + return t = (t -= n = +n) || 1 / t, + function(e) { + return (e - n) / t + } + } + + function Iu(n, t) { + return t = (t -= n = +n) || 1 / t, + function(e) { + return Math.max(0, Math.min(1, (e - n) / t)) + } + } + + function Yu(n) { + for (var t = n.source, e = n.target, r = Vu(t, e), u = [t]; t !== r;) t = t.parent, u.push(t); + for (var i = u.length; e !== r;) u.splice(i, 0, e), e = e.parent; + return u + } + + function Zu(n) { + for (var t = [], e = n.parent; null != e;) t.push(n), n = e, e = e.parent; + return t.push(n), t + } + + function Vu(n, t) { + if (n === t) return n; + for (var e = Zu(n), r = Zu(t), u = e.pop(), i = r.pop(), o = null; u === i;) o = u, u = e.pop(), i = r.pop(); + return o + } + + function Xu(n) { + n.fixed |= 2 + } + + function $u(n) { + n.fixed &= -7 + } + + function Bu(n) { + n.fixed |= 4, n.px = n.x, n.py = n.y + } + + function Wu(n) { + n.fixed &= -5 + } + + function Ju(n, t, e) { + var r = 0, + u = 0; + if (n.charge = 0, !n.leaf) + for (var i, o = n.nodes, a = o.length, c = -1; ++c < a;) i = o[c], null != i && (Ju(i, t, e), n.charge += i.charge, r += i.charge * i.cx, u += i.charge * i.cy); + if (n.point) { + n.leaf || (n.point.x += Math.random() - .5, n.point.y += Math.random() - .5); + var l = t * e[n.point.index]; + n.charge += n.pointCharge = l, r += l * n.point.x, u += l * n.point.y + } + n.cx = r / n.charge, n.cy = u / n.charge + } + + function Gu(n, t) { + return ta.rebind(n, t, "sort", "children", "value"), n.nodes = n, n.links = ri, n + } + + function Ku(n, t) { + for (var e = [n]; null != (n = e.pop());) + if (t(n), (u = n.children) && (r = u.length)) + for (var r, u; --r >= 0;) e.push(u[r]) + } + + function Qu(n, t) { + for (var e = [n], r = []; null != (n = e.pop());) + if (r.push(n), (i = n.children) && (u = i.length)) + for (var u, i, o = -1; ++o < u;) e.push(i[o]); + for (; null != (n = r.pop());) t(n) + } + + function ni(n) { + return n.children + } + + function ti(n) { + return n.value + } + + function ei(n, t) { + return t.value - n.value + } + + function ri(n) { + return ta.merge(n.map(function(n) { + return (n.children || []).map(function(t) { + return { + source: n, + target: t + } + }) + })) + } + + function ui(n) { + return n.x + } + + function ii(n) { + return n.y + } + + function oi(n, t, e) { + n.y0 = t, n.y = e + } + + function ai(n) { + return ta.range(n.length) + } + + function ci(n) { + for (var t = -1, e = n[0].length, r = []; ++t < e;) r[t] = 0; + return r + } + + function li(n) { + for (var t, e = 1, r = 0, u = n[0][1], i = n.length; i > e; ++e)(t = n[e][1]) > u && (r = e, u = t); + return r + } + + function si(n) { + return n.reduce(fi, 0) + } + + function fi(n, t) { + return n + t[1] + } + + function hi(n, t) { + return gi(n, Math.ceil(Math.log(t.length) / Math.LN2 + 1)) + } + + function gi(n, t) { + for (var e = -1, r = +n[0], u = (n[1] - r) / t, i = []; ++e <= t;) i[e] = u * e + r; + return i + } + + function pi(n) { + return [ta.min(n), ta.max(n)] + } + + function vi(n, t) { + return n.value - t.value + } + + function di(n, t) { + var e = n._pack_next; + n._pack_next = t, t._pack_prev = n, t._pack_next = e, e._pack_prev = t + } + + function mi(n, t) { + n._pack_next = t, t._pack_prev = n + } + + function yi(n, t) { + var e = t.x - n.x, + r = t.y - n.y, + u = n.r + t.r; + return .999 * u * u > e * e + r * r + } + + function Mi(n) { + function t(n) { + s = Math.min(n.x - n.r, s), f = Math.max(n.x + n.r, f), h = Math.min(n.y - n.r, h), g = Math.max(n.y + n.r, g) + } + if ((e = n.children) && (l = e.length)) { + var e, r, u, i, o, a, c, l, s = 1 / 0, + f = -1 / 0, + h = 1 / 0, + g = -1 / 0; + if (e.forEach(xi), r = e[0], r.x = -r.r, r.y = 0, t(r), l > 1 && (u = e[1], u.x = u.r, u.y = 0, t(u), l > 2)) + for (i = e[2], wi(r, u, i), t(i), di(r, i), r._pack_prev = i, di(i, u), u = r._pack_next, o = 3; l > o; o++) { + wi(r, u, i = e[o]); + var p = 0, + v = 1, + d = 1; + for (a = u._pack_next; a !== u; a = a._pack_next, v++) + if (yi(a, i)) { + p = 1; + break + } if (1 == p) + for (c = r._pack_prev; c !== a._pack_prev && !yi(c, i); c = c._pack_prev, d++); + p ? (d > v || v == d && u.r < r.r ? mi(r, u = a) : mi(r = c, u), o--) : (di(r, i), u = i, t(i)) + } + var m = (s + f) / 2, + y = (h + g) / 2, + M = 0; + for (o = 0; l > o; o++) i = e[o], i.x -= m, i.y -= y, M = Math.max(M, i.r + Math.sqrt(i.x * i.x + i.y * i.y)); + n.r = M, e.forEach(bi) + } + } + + function xi(n) { + n._pack_next = n._pack_prev = n + } + + function bi(n) { + delete n._pack_next, delete n._pack_prev + } + + function _i(n, t, e, r) { + var u = n.children; + if (n.x = t += r * n.x, n.y = e += r * n.y, n.r *= r, u) + for (var i = -1, o = u.length; ++i < o;) _i(u[i], t, e, r) + } + + function wi(n, t, e) { + var r = n.r + e.r, + u = t.x - n.x, + i = t.y - n.y; + if (r && (u || i)) { + var o = t.r + e.r, + a = u * u + i * i; + o *= o, r *= r; + var c = .5 + (r - o) / (2 * a), + l = Math.sqrt(Math.max(0, 2 * o * (r + a) - (r -= a) * r - o * o)) / (2 * a); + e.x = n.x + c * u + l * i, e.y = n.y + c * i - l * u + } else e.x = n.x + r, e.y = n.y + } + + function Si(n, t) { + return n.parent == t.parent ? 1 : 2 + } + + function ki(n) { + var t = n.children; + return t.length ? t[0] : n.t + } + + function Ei(n) { + var t, e = n.children; + return (t = e.length) ? e[t - 1] : n.t + } + + function Ai(n, t, e) { + var r = e / (t.i - n.i); + t.c -= r, t.s += e, n.c += r, t.z += e, t.m += e + } + + function Ni(n) { + for (var t, e = 0, r = 0, u = n.children, i = u.length; --i >= 0;) t = u[i], t.z += e, t.m += e, e += t.s + (r += t.c) + } + + function Ci(n, t, e) { + return n.a.parent === t.parent ? n.a : e + } + + function zi(n) { + return 1 + ta.max(n, function(n) { + return n.y + }) + } + + function qi(n) { + return n.reduce(function(n, t) { + return n + t.x + }, 0) / n.length + } + + function Li(n) { + var t = n.children; + return t && t.length ? Li(t[0]) : n + } + + function Ti(n) { + var t, e = n.children; + return e && (t = e.length) ? Ti(e[t - 1]) : n + } + + function Ri(n) { + return { + x: n.x, + y: n.y, + dx: n.dx, + dy: n.dy + } + } + + function Di(n, t) { + var e = n.x + t[3], + r = n.y + t[0], + u = n.dx - t[1] - t[3], + i = n.dy - t[0] - t[2]; + return 0 > u && (e += u / 2, u = 0), 0 > i && (r += i / 2, i = 0), { + x: e, + y: r, + dx: u, + dy: i + } + } + + function Pi(n) { + var t = n[0], + e = n[n.length - 1]; + return e > t ? [t, e] : [e, t] + } + + function Ui(n) { + return n.rangeExtent ? n.rangeExtent() : Pi(n.range()) + } + + function ji(n, t, e, r) { + var u = e(n[0], n[1]), + i = r(t[0], t[1]); + return function(n) { + return i(u(n)) + } + } + + function Fi(n, t) { + var e, r = 0, + u = n.length - 1, + i = n[r], + o = n[u]; + return i > o && (e = r, r = u, u = e, e = i, i = o, o = e), n[r] = t.floor(i), n[u] = t.ceil(o), n + } + + function Hi(n) { + return n ? { + floor: function(t) { + return Math.floor(t / n) * n + }, + ceil: function(t) { + return Math.ceil(t / n) * n + } + } : ml + } + + function Oi(n, t, e, r) { + var u = [], + i = [], + o = 0, + a = Math.min(n.length, t.length) - 1; + for (n[a] < n[0] && (n = n.slice().reverse(), t = t.slice().reverse()); ++o <= a;) u.push(e(n[o - 1], n[o])), i.push(r(t[o - 1], t[o])); + return function(t) { + var e = ta.bisect(n, t, 1, a) - 1; + return i[e](u[e](t)) + } + } + + function Ii(n, t, e, r) { + function u() { + var u = Math.min(n.length, t.length) > 2 ? Oi : ji, + c = r ? Iu : Ou; + return o = u(n, t, c, e), a = u(t, n, c, mu), i + } + + function i(n) { + return o(n) + } + var o, a; + return i.invert = function(n) { + return a(n) + }, i.domain = function(t) { + return arguments.length ? (n = t.map(Number), u()) : n + }, i.range = function(n) { + return arguments.length ? (t = n, u()) : t + }, i.rangeRound = function(n) { + return i.range(n).interpolate(Du) + }, i.clamp = function(n) { + return arguments.length ? (r = n, u()) : r + }, i.interpolate = function(n) { + return arguments.length ? (e = n, u()) : e + }, i.ticks = function(t) { + return Xi(n, t) + }, i.tickFormat = function(t, e) { + return $i(n, t, e) + }, i.nice = function(t) { + return Zi(n, t), u() + }, i.copy = function() { + return Ii(n, t, e, r) + }, u() + } + + function Yi(n, t) { + return ta.rebind(n, t, "range", "rangeRound", "interpolate", "clamp") + } + + function Zi(n, t) { + return Fi(n, Hi(Vi(n, t)[2])) + } + + function Vi(n, t) { + null == t && (t = 10); + var e = Pi(n), + r = e[1] - e[0], + u = Math.pow(10, Math.floor(Math.log(r / t) / Math.LN10)), + i = t / r * u; + return .15 >= i ? u *= 10 : .35 >= i ? u *= 5 : .75 >= i && (u *= 2), e[0] = Math.ceil(e[0] / u) * u, e[1] = Math.floor(e[1] / u) * u + .5 * u, e[2] = u, e + } + + function Xi(n, t) { + return ta.range.apply(ta, Vi(n, t)) + } + + function $i(n, t, e) { + var r = Vi(n, t); + if (e) { + var u = ic.exec(e); + if (u.shift(), "s" === u[8]) { + var i = ta.formatPrefix(Math.max(ga(r[0]), ga(r[1]))); + return u[7] || (u[7] = "." + Bi(i.scale(r[2]))), u[8] = "f", e = ta.format(u.join("")), + function(n) { + return e(i.scale(n)) + i.symbol + } + } + u[7] || (u[7] = "." + Wi(u[8], r)), e = u.join("") + } else e = ",." + Bi(r[2]) + "f"; + return ta.format(e) + } + + function Bi(n) { + return -Math.floor(Math.log(n) / Math.LN10 + .01) + } + + function Wi(n, t) { + var e = Bi(t[2]); + return n in yl ? Math.abs(e - Bi(Math.max(ga(t[0]), ga(t[1])))) + +("e" !== n) : e - 2 * ("%" === n) + } + + function Ji(n, t, e, r) { + function u(n) { + return (e ? Math.log(0 > n ? 0 : n) : -Math.log(n > 0 ? 0 : -n)) / Math.log(t) + } + + function i(n) { + return e ? Math.pow(t, n) : -Math.pow(t, -n) + } + + function o(t) { + return n(u(t)) + } + return o.invert = function(t) { + return i(n.invert(t)) + }, o.domain = function(t) { + return arguments.length ? (e = t[0] >= 0, n.domain((r = t.map(Number)).map(u)), o) : r + }, o.base = function(e) { + return arguments.length ? (t = +e, n.domain(r.map(u)), o) : t + }, o.nice = function() { + var t = Fi(r.map(u), e ? Math : xl); + return n.domain(t), r = t.map(i), o + }, o.ticks = function() { + var n = Pi(r), + o = [], + a = n[0], + c = n[1], + l = Math.floor(u(a)), + s = Math.ceil(u(c)), + f = t % 1 ? 2 : t; + if (isFinite(s - l)) { + if (e) { + for (; s > l; l++) + for (var h = 1; f > h; h++) o.push(i(l) * h); + o.push(i(l)) + } else + for (o.push(i(l)); l++ < s;) + for (var h = f - 1; h > 0; h--) o.push(i(l) * h); + for (l = 0; o[l] < a; l++); + for (s = o.length; o[s - 1] > c; s--); + o = o.slice(l, s) + } + return o + }, o.tickFormat = function(n, t) { + if (!arguments.length) return Ml; + arguments.length < 2 ? t = Ml : "function" != typeof t && (t = ta.format(t)); + var r, a = Math.max(.1, n / o.ticks().length), + c = e ? (r = 1e-12, Math.ceil) : (r = -1e-12, Math.floor); + return function(n) { + return n / i(c(u(n) + r)) <= a ? t(n) : "" + } + }, o.copy = function() { + return Ji(n.copy(), t, e, r) + }, Yi(o, n) + } + + function Gi(n, t, e) { + function r(t) { + return n(u(t)) + } + var u = Ki(t), + i = Ki(1 / t); + return r.invert = function(t) { + return i(n.invert(t)) + }, r.domain = function(t) { + return arguments.length ? (n.domain((e = t.map(Number)).map(u)), r) : e + }, r.ticks = function(n) { + return Xi(e, n) + }, r.tickFormat = function(n, t) { + return $i(e, n, t) + }, r.nice = function(n) { + return r.domain(Zi(e, n)) + }, r.exponent = function(o) { + return arguments.length ? (u = Ki(t = o), i = Ki(1 / t), n.domain(e.map(u)), r) : t + }, r.copy = function() { + return Gi(n.copy(), t, e) + }, Yi(r, n) + } + + function Ki(n) { + return function(t) { + return 0 > t ? -Math.pow(-t, n) : Math.pow(t, n) + } + } + + function Qi(n, t) { + function e(e) { + return i[((u.get(e) || ("range" === t.t ? u.set(e, n.push(e)) : 0 / 0)) - 1) % i.length] + } + + function r(t, e) { + return ta.range(n.length).map(function(n) { + return t + e * n + }) + } + var u, i, o; + return e.domain = function(r) { + if (!arguments.length) return n; + n = [], u = new l; + for (var i, o = -1, a = r.length; ++o < a;) u.has(i = r[o]) || u.set(i, n.push(i)); + return e[t.t].apply(e, t.a) + }, e.range = function(n) { + return arguments.length ? (i = n, o = 0, t = { + t: "range", + a: arguments + }, e) : i + }, e.rangePoints = function(u, a) { + arguments.length < 2 && (a = 0); + var c = u[0], + l = u[1], + s = n.length < 2 ? (c = (c + l) / 2, 0) : (l - c) / (n.length - 1 + a); + return i = r(c + s * a / 2, s), o = 0, t = { + t: "rangePoints", + a: arguments + }, e + }, e.rangeRoundPoints = function(u, a) { + arguments.length < 2 && (a = 0); + var c = u[0], + l = u[1], + s = n.length < 2 ? (c = l = Math.round((c + l) / 2), 0) : (l - c) / (n.length - 1 + a) | 0; + return i = r(c + Math.round(s * a / 2 + (l - c - (n.length - 1 + a) * s) / 2), s), o = 0, t = { + t: "rangeRoundPoints", + a: arguments + }, e + }, e.rangeBands = function(u, a, c) { + arguments.length < 2 && (a = 0), arguments.length < 3 && (c = a); + var l = u[1] < u[0], + s = u[l - 0], + f = u[1 - l], + h = (f - s) / (n.length - a + 2 * c); + return i = r(s + h * c, h), l && i.reverse(), o = h * (1 - a), t = { + t: "rangeBands", + a: arguments + }, e + }, e.rangeRoundBands = function(u, a, c) { + arguments.length < 2 && (a = 0), arguments.length < 3 && (c = a); + var l = u[1] < u[0], + s = u[l - 0], + f = u[1 - l], + h = Math.floor((f - s) / (n.length - a + 2 * c)); + return i = r(s + Math.round((f - s - (n.length - a) * h) / 2), h), l && i.reverse(), o = Math.round(h * (1 - a)), t = { + t: "rangeRoundBands", + a: arguments + }, e + }, e.rangeBand = function() { + return o + }, e.rangeExtent = function() { + return Pi(t.a[0]) + }, e.copy = function() { + return Qi(n, t) + }, e.domain(n) + } + + function no(n, t) { + function i() { + var e = 0, + r = t.length; + for (a = []; ++e < r;) a[e - 1] = ta.quantile(n, e / r); + return o + } + + function o(n) { + return isNaN(n = +n) ? void 0 : t[ta.bisect(a, n)] + } + var a; + return o.domain = function(t) { + return arguments.length ? (n = t.map(r).filter(u).sort(e), i()) : n + }, o.range = function(n) { + return arguments.length ? (t = n, i()) : t + }, o.quantiles = function() { + return a + }, o.invertExtent = function(e) { + return e = t.indexOf(e), 0 > e ? [0 / 0, 0 / 0] : [e > 0 ? a[e - 1] : n[0], e < a.length ? a[e] : n[n.length - 1]] + }, o.copy = function() { + return no(n, t) + }, i() + } + + function to(n, t, e) { + function r(t) { + return e[Math.max(0, Math.min(o, Math.floor(i * (t - n))))] + } + + function u() { + return i = e.length / (t - n), o = e.length - 1, r + } + var i, o; + return r.domain = function(e) { + return arguments.length ? (n = +e[0], t = +e[e.length - 1], u()) : [n, t] + }, r.range = function(n) { + return arguments.length ? (e = n, u()) : e + }, r.invertExtent = function(t) { + return t = e.indexOf(t), t = 0 > t ? 0 / 0 : t / i + n, [t, t + 1 / i] + }, r.copy = function() { + return to(n, t, e) + }, u() + } + + function eo(n, t) { + function e(e) { + return e >= e ? t[ta.bisect(n, e)] : void 0 + } + return e.domain = function(t) { + return arguments.length ? (n = t, e) : n + }, e.range = function(n) { + return arguments.length ? (t = n, e) : t + }, e.invertExtent = function(e) { + return e = t.indexOf(e), [n[e - 1], n[e]] + }, e.copy = function() { + return eo(n, t) + }, e + } + + function ro(n) { + function t(n) { + return +n + } + return t.invert = t, t.domain = t.range = function(e) { + return arguments.length ? (n = e.map(t), t) : n + }, t.ticks = function(t) { + return Xi(n, t) + }, t.tickFormat = function(t, e) { + return $i(n, t, e) + }, t.copy = function() { + return ro(n) + }, t + } + + function uo() { + return 0 + } + + function io(n) { + return n.innerRadius + } + + function oo(n) { + return n.outerRadius + } + + function ao(n) { + return n.startAngle + } + + function co(n) { + return n.endAngle + } + + function lo(n) { + return n && n.padAngle + } + + function so(n, t, e, r) { + return (n - e) * t - (t - r) * n > 0 ? 0 : 1 + } + + function fo(n, t, e, r, u) { + var i = n[0] - t[0], + o = n[1] - t[1], + a = (u ? r : -r) / Math.sqrt(i * i + o * o), + c = a * o, + l = -a * i, + s = n[0] + c, + f = n[1] + l, + h = t[0] + c, + g = t[1] + l, + p = (s + h) / 2, + v = (f + g) / 2, + d = h - s, + m = g - f, + y = d * d + m * m, + M = e - r, + x = s * g - h * f, + b = (0 > m ? -1 : 1) * Math.sqrt(M * M * y - x * x), + _ = (x * m - d * b) / y, + w = (-x * d - m * b) / y, + S = (x * m + d * b) / y, + k = (-x * d + m * b) / y, + E = _ - p, + A = w - v, + N = S - p, + C = k - v; + return E * E + A * A > N * N + C * C && (_ = S, w = k), [ + [_ - c, w - l], + [_ * e / M, w * e / M] + ] + } + + function ho(n) { + function t(t) { + function o() { + l.push("M", i(n(s), a)) + } + for (var c, l = [], s = [], f = -1, h = t.length, g = Et(e), p = Et(r); ++f < h;) u.call(this, c = t[f], f) ? s.push([+g.call(this, c, f), +p.call(this, c, f)]) : s.length && (o(), s = []); + return s.length && o(), l.length ? l.join("") : null + } + var e = Ar, + r = Nr, + u = Ne, + i = go, + o = i.key, + a = .7; + return t.x = function(n) { + return arguments.length ? (e = n, t) : e + }, t.y = function(n) { + return arguments.length ? (r = n, t) : r + }, t.defined = function(n) { + return arguments.length ? (u = n, t) : u + }, t.interpolate = function(n) { + return arguments.length ? (o = "function" == typeof n ? i = n : (i = El.get(n) || go).key, t) : o + }, t.tension = function(n) { + return arguments.length ? (a = n, t) : a + }, t + } + + function go(n) { + return n.join("L") + } + + function po(n) { + return go(n) + "Z" + } + + function vo(n) { + for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;) u.push("H", (r[0] + (r = n[t])[0]) / 2, "V", r[1]); + return e > 1 && u.push("H", r[0]), u.join("") + } + + function mo(n) { + for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;) u.push("V", (r = n[t])[1], "H", r[0]); + return u.join("") + } + + function yo(n) { + for (var t = 0, e = n.length, r = n[0], u = [r[0], ",", r[1]]; ++t < e;) u.push("H", (r = n[t])[0], "V", r[1]); + return u.join("") + } + + function Mo(n, t) { + return n.length < 4 ? go(n) : n[1] + _o(n.slice(1, -1), wo(n, t)) + } + + function xo(n, t) { + return n.length < 3 ? go(n) : n[0] + _o((n.push(n[0]), n), wo([n[n.length - 2]].concat(n, [n[1]]), t)) + } + + function bo(n, t) { + return n.length < 3 ? go(n) : n[0] + _o(n, wo(n, t)) + } + + function _o(n, t) { + if (t.length < 1 || n.length != t.length && n.length != t.length + 2) return go(n); + var e = n.length != t.length, + r = "", + u = n[0], + i = n[1], + o = t[0], + a = o, + c = 1; + if (e && (r += "Q" + (i[0] - 2 * o[0] / 3) + "," + (i[1] - 2 * o[1] / 3) + "," + i[0] + "," + i[1], u = n[1], c = 2), t.length > 1) { + a = t[1], i = n[c], c++, r += "C" + (u[0] + o[0]) + "," + (u[1] + o[1]) + "," + (i[0] - a[0]) + "," + (i[1] - a[1]) + "," + i[0] + "," + i[1]; + for (var l = 2; l < t.length; l++, c++) i = n[c], a = t[l], r += "S" + (i[0] - a[0]) + "," + (i[1] - a[1]) + "," + i[0] + "," + i[1] + } + if (e) { + var s = n[c]; + r += "Q" + (i[0] + 2 * a[0] / 3) + "," + (i[1] + 2 * a[1] / 3) + "," + s[0] + "," + s[1] + } + return r + } + + function wo(n, t) { + for (var e, r = [], u = (1 - t) / 2, i = n[0], o = n[1], a = 1, c = n.length; ++a < c;) e = i, i = o, o = n[a], r.push([u * (o[0] - e[0]), u * (o[1] - e[1])]); + return r + } + + function So(n) { + if (n.length < 3) return go(n); + var t = 1, + e = n.length, + r = n[0], + u = r[0], + i = r[1], + o = [u, u, u, (r = n[1])[0]], + a = [i, i, i, r[1]], + c = [u, ",", i, "L", No(Cl, o), ",", No(Cl, a)]; + for (n.push(n[e - 1]); ++t <= e;) r = n[t], o.shift(), o.push(r[0]), a.shift(), a.push(r[1]), Co(c, o, a); + return n.pop(), c.push("L", r), c.join("") + } + + function ko(n) { + if (n.length < 4) return go(n); + for (var t, e = [], r = -1, u = n.length, i = [0], o = [0]; ++r < 3;) t = n[r], i.push(t[0]), o.push(t[1]); + for (e.push(No(Cl, i) + "," + No(Cl, o)), --r; ++r < u;) t = n[r], i.shift(), i.push(t[0]), o.shift(), o.push(t[1]), Co(e, i, o); + return e.join("") + } + + function Eo(n) { + for (var t, e, r = -1, u = n.length, i = u + 4, o = [], a = []; ++r < 4;) e = n[r % u], o.push(e[0]), a.push(e[1]); + for (t = [No(Cl, o), ",", No(Cl, a)], --r; ++r < i;) e = n[r % u], o.shift(), o.push(e[0]), a.shift(), a.push(e[1]), Co(t, o, a); + return t.join("") + } + + function Ao(n, t) { + var e = n.length - 1; + if (e) + for (var r, u, i = n[0][0], o = n[0][1], a = n[e][0] - i, c = n[e][1] - o, l = -1; ++l <= e;) r = n[l], u = l / e, r[0] = t * r[0] + (1 - t) * (i + u * a), r[1] = t * r[1] + (1 - t) * (o + u * c); + return So(n) + } + + function No(n, t) { + return n[0] * t[0] + n[1] * t[1] + n[2] * t[2] + n[3] * t[3] + } + + function Co(n, t, e) { + n.push("C", No(Al, t), ",", No(Al, e), ",", No(Nl, t), ",", No(Nl, e), ",", No(Cl, t), ",", No(Cl, e)) + } + + function zo(n, t) { + return (t[1] - n[1]) / (t[0] - n[0]) + } + + function qo(n) { + for (var t = 0, e = n.length - 1, r = [], u = n[0], i = n[1], o = r[0] = zo(u, i); ++t < e;) r[t] = (o + (o = zo(u = i, i = n[t + 1]))) / 2; + return r[t] = o, r + } + + function Lo(n) { + for (var t, e, r, u, i = [], o = qo(n), a = -1, c = n.length - 1; ++a < c;) t = zo(n[a], n[a + 1]), ga(t) < Ca ? o[a] = o[a + 1] = 0 : (e = o[a] / t, r = o[a + 1] / t, u = e * e + r * r, u > 9 && (u = 3 * t / Math.sqrt(u), o[a] = u * e, o[a + 1] = u * r)); + for (a = -1; ++a <= c;) u = (n[Math.min(c, a + 1)][0] - n[Math.max(0, a - 1)][0]) / (6 * (1 + o[a] * o[a])), i.push([u || 0, o[a] * u || 0]); + return i + } + + function To(n) { + return n.length < 3 ? go(n) : n[0] + _o(n, Lo(n)) + } + + function Ro(n) { + for (var t, e, r, u = -1, i = n.length; ++u < i;) t = n[u], e = t[0], r = t[1] - Ra, t[0] = e * Math.cos(r), t[1] = e * Math.sin(r); + return n + } + + function Do(n) { + function t(t) { + function c() { + v.push("M", a(n(m), f), s, l(n(d.reverse()), f), "Z") + } + for (var h, g, p, v = [], d = [], m = [], y = -1, M = t.length, x = Et(e), b = Et(u), _ = e === r ? function() { + return g + } : Et(r), w = u === i ? function() { + return p + } : Et(i); ++y < M;) o.call(this, h = t[y], y) ? (d.push([g = +x.call(this, h, y), p = +b.call(this, h, y)]), m.push([+_.call(this, h, y), +w.call(this, h, y)])) : d.length && (c(), d = [], m = []); + return d.length && c(), v.length ? v.join("") : null + } + var e = Ar, + r = Ar, + u = 0, + i = Nr, + o = Ne, + a = go, + c = a.key, + l = a, + s = "L", + f = .7; + return t.x = function(n) { + return arguments.length ? (e = r = n, t) : r + }, t.x0 = function(n) { + return arguments.length ? (e = n, t) : e + }, t.x1 = function(n) { + return arguments.length ? (r = n, t) : r + }, t.y = function(n) { + return arguments.length ? (u = i = n, t) : i + }, t.y0 = function(n) { + return arguments.length ? (u = n, t) : u + }, t.y1 = function(n) { + return arguments.length ? (i = n, t) : i + }, t.defined = function(n) { + return arguments.length ? (o = n, t) : o + }, t.interpolate = function(n) { + return arguments.length ? (c = "function" == typeof n ? a = n : (a = El.get(n) || go).key, l = a.reverse || a, s = a.closed ? "M" : "L", t) : c + }, t.tension = function(n) { + return arguments.length ? (f = n, t) : f + }, t + } + + function Po(n) { + return n.radius + } + + function Uo(n) { + return [n.x, n.y] + } + + function jo(n) { + return function() { + var t = n.apply(this, arguments), + e = t[0], + r = t[1] - Ra; + return [e * Math.cos(r), e * Math.sin(r)] + } + } + + function Fo() { + return 64 + } + + function Ho() { + return "circle" + } + + function Oo(n) { + var t = Math.sqrt(n / qa); + return "M0," + t + "A" + t + "," + t + " 0 1,1 0," + -t + "A" + t + "," + t + " 0 1,1 0," + t + "Z" + } + + function Io(n) { + return function() { + var t, e; + (t = this[n]) && (e = t[t.active]) && (--t.count ? delete t[t.active] : delete this[n], t.active += .5, e.event && e.event.interrupt.call(this, this.__data__, e.index)) + } + } + + function Yo(n, t, e) { + return ya(n, Pl), n.namespace = t, n.id = e, n + } + + function Zo(n, t, e, r) { + var u = n.id, + i = n.namespace; + return Y(n, "function" == typeof e ? function(n, o, a) { + n[i][u].tween.set(t, r(e.call(n, n.__data__, o, a))) + } : (e = r(e), function(n) { + n[i][u].tween.set(t, e) + })) + } + + function Vo(n) { + return null == n && (n = ""), + function() { + this.textContent = n + } + } + + function Xo(n) { + return null == n ? "__transition__" : "__transition_" + n + "__" + } + + function $o(n, t, e, r, u) { + var i = n[e] || (n[e] = { + active: 0, + count: 0 + }), + o = i[r]; + if (!o) { + var a = u.time; + o = i[r] = { + tween: new l, + time: a, + delay: u.delay, + duration: u.duration, + ease: u.ease, + index: t + }, u = null, ++i.count, ta.timer(function(u) { + function c(e) { + if (i.active > r) return s(); + var u = i[i.active]; + u && (--i.count, delete i[i.active], u.event && u.event.interrupt.call(n, n.__data__, u.index)), i.active = r, o.event && o.event.start.call(n, n.__data__, t), o.tween.forEach(function(e, r) { + (r = r.call(n, n.__data__, t)) && v.push(r) + }), h = o.ease, f = o.duration, ta.timer(function() { + return p.c = l(e || 1) ? Ne : l, 1 + }, 0, a) + } + + function l(e) { + if (i.active !== r) return 1; + for (var u = e / f, a = h(u), c = v.length; c > 0;) v[--c].call(n, a); + return u >= 1 ? (o.event && o.event.end.call(n, n.__data__, t), s()) : void 0 + } + + function s() { + return --i.count ? delete i[r] : delete n[e], 1 + } + var f, h, g = o.delay, + p = ec, + v = []; + return p.t = g + a, u >= g ? c(u - g) : void(p.c = c) + }, 0, a) + } + } + + function Bo(n, t, e) { + n.attr("transform", function(n) { + var r = t(n); + return "translate(" + (isFinite(r) ? r : e(n)) + ",0)" + }) + } + + function Wo(n, t, e) { + n.attr("transform", function(n) { + var r = t(n); + return "translate(0," + (isFinite(r) ? r : e(n)) + ")" + }) + } + + function Jo(n) { + return n.toISOString() + } + + function Go(n, t, e) { + function r(t) { + return n(t) + } + + function u(n, e) { + var r = n[1] - n[0], + u = r / e, + i = ta.bisect(Vl, u); + return i == Vl.length ? [t.year, Vi(n.map(function(n) { + return n / 31536e6 + }), e)[2]] : i ? t[u / Vl[i - 1] < Vl[i] / u ? i - 1 : i] : [Bl, Vi(n, e)[2]] + } + return r.invert = function(t) { + return Ko(n.invert(t)) + }, r.domain = function(t) { + return arguments.length ? (n.domain(t), r) : n.domain().map(Ko) + }, r.nice = function(n, t) { + function e(e) { + return !isNaN(e) && !n.range(e, Ko(+e + 1), t).length + } + var i = r.domain(), + o = Pi(i), + a = null == n ? u(o, 10) : "number" == typeof n && u(o, n); + return a && (n = a[0], t = a[1]), r.domain(Fi(i, t > 1 ? { + floor: function(t) { + for (; e(t = n.floor(t));) t = Ko(t - 1); + return t + }, + ceil: function(t) { + for (; e(t = n.ceil(t));) t = Ko(+t + 1); + return t + } + } : n)) + }, r.ticks = function(n, t) { + var e = Pi(r.domain()), + i = null == n ? u(e, 10) : "number" == typeof n ? u(e, n) : !n.range && [{ + range: n + }, t]; + return i && (n = i[0], t = i[1]), n.range(e[0], Ko(+e[1] + 1), 1 > t ? 1 : t) + }, r.tickFormat = function() { + return e + }, r.copy = function() { + return Go(n.copy(), t, e) + }, Yi(r, n) + } + + function Ko(n) { + return new Date(n) + } + + function Qo(n) { + return JSON.parse(n.responseText) + } + + function na(n) { + var t = ua.createRange(); + return t.selectNode(ua.body), t.createContextualFragment(n.responseText) + } + var ta = { + version: "3.5.4" + }, + ea = [].slice, + ra = function(n) { + return ea.call(n) + }, + ua = this.document; + if (ua) try { + ra(ua.documentElement.childNodes)[0].nodeType + } catch (ia) { + ra = function(n) { + for (var t = n.length, e = new Array(t); t--;) e[t] = n[t]; + return e + } + } + if (Date.now || (Date.now = function() { + return +new Date + }), ua) try { + ua.createElement("DIV").style.setProperty("opacity", 0, "") + } catch (oa) { + var aa = this.Element.prototype, + ca = aa.setAttribute, + la = aa.setAttributeNS, + sa = this.CSSStyleDeclaration.prototype, + fa = sa.setProperty; + aa.setAttribute = function(n, t) { + ca.call(this, n, t + "") + }, aa.setAttributeNS = function(n, t, e) { + la.call(this, n, t, e + "") + }, sa.setProperty = function(n, t, e) { + fa.call(this, n, t + "", e) + } + } + ta.ascending = e, ta.descending = function(n, t) { + return n > t ? -1 : t > n ? 1 : t >= n ? 0 : 0 / 0 + }, ta.min = function(n, t) { + var e, r, u = -1, + i = n.length; + if (1 === arguments.length) { + for (; ++u < i;) + if (null != (r = n[u]) && r >= r) { + e = r; + break + } for (; ++u < i;) null != (r = n[u]) && e > r && (e = r) + } else { + for (; ++u < i;) + if (null != (r = t.call(n, n[u], u)) && r >= r) { + e = r; + break + } for (; ++u < i;) null != (r = t.call(n, n[u], u)) && e > r && (e = r) + } + return e + }, ta.max = function(n, t) { + var e, r, u = -1, + i = n.length; + if (1 === arguments.length) { + for (; ++u < i;) + if (null != (r = n[u]) && r >= r) { + e = r; + break + } for (; ++u < i;) null != (r = n[u]) && r > e && (e = r) + } else { + for (; ++u < i;) + if (null != (r = t.call(n, n[u], u)) && r >= r) { + e = r; + break + } for (; ++u < i;) null != (r = t.call(n, n[u], u)) && r > e && (e = r) + } + return e + }, ta.extent = function(n, t) { + var e, r, u, i = -1, + o = n.length; + if (1 === arguments.length) { + for (; ++i < o;) + if (null != (r = n[i]) && r >= r) { + e = u = r; + break + } for (; ++i < o;) null != (r = n[i]) && (e > r && (e = r), r > u && (u = r)) + } else { + for (; ++i < o;) + if (null != (r = t.call(n, n[i], i)) && r >= r) { + e = u = r; + break + } for (; ++i < o;) null != (r = t.call(n, n[i], i)) && (e > r && (e = r), r > u && (u = r)) + } + return [e, u] + }, ta.sum = function(n, t) { + var e, r = 0, + i = n.length, + o = -1; + if (1 === arguments.length) + for (; ++o < i;) u(e = +n[o]) && (r += e); + else + for (; ++o < i;) u(e = +t.call(n, n[o], o)) && (r += e); + return r + }, ta.mean = function(n, t) { + var e, i = 0, + o = n.length, + a = -1, + c = o; + if (1 === arguments.length) + for (; ++a < o;) u(e = r(n[a])) ? i += e : --c; + else + for (; ++a < o;) u(e = r(t.call(n, n[a], a))) ? i += e : --c; + return c ? i / c : void 0 + }, ta.quantile = function(n, t) { + var e = (n.length - 1) * t + 1, + r = Math.floor(e), + u = +n[r - 1], + i = e - r; + return i ? u + i * (n[r] - u) : u + }, ta.median = function(n, t) { + var i, o = [], + a = n.length, + c = -1; + if (1 === arguments.length) + for (; ++c < a;) u(i = r(n[c])) && o.push(i); + else + for (; ++c < a;) u(i = r(t.call(n, n[c], c))) && o.push(i); + return o.length ? ta.quantile(o.sort(e), .5) : void 0 + }, ta.variance = function(n, t) { + var e, i, o = n.length, + a = 0, + c = 0, + l = -1, + s = 0; + if (1 === arguments.length) + for (; ++l < o;) u(e = r(n[l])) && (i = e - a, a += i / ++s, c += i * (e - a)); + else + for (; ++l < o;) u(e = r(t.call(n, n[l], l))) && (i = e - a, a += i / ++s, c += i * (e - a)); + return s > 1 ? c / (s - 1) : void 0 + }, ta.deviation = function() { + var n = ta.variance.apply(this, arguments); + return n ? Math.sqrt(n) : n + }; + var ha = i(e); + ta.bisectLeft = ha.left, ta.bisect = ta.bisectRight = ha.right, ta.bisector = function(n) { + return i(1 === n.length ? function(t, r) { + return e(n(t), r) + } : n) + }, ta.shuffle = function(n, t, e) { + (i = arguments.length) < 3 && (e = n.length, 2 > i && (t = 0)); + for (var r, u, i = e - t; i;) u = Math.random() * i-- | 0, r = n[i + t], n[i + t] = n[u + t], n[u + t] = r; + return n + }, ta.permute = function(n, t) { + for (var e = t.length, r = new Array(e); e--;) r[e] = n[t[e]]; + return r + }, ta.pairs = function(n) { + for (var t, e = 0, r = n.length - 1, u = n[0], i = new Array(0 > r ? 0 : r); r > e;) i[e] = [t = u, u = n[++e]]; + return i + }, ta.zip = function() { + if (!(r = arguments.length)) return []; + for (var n = -1, t = ta.min(arguments, o), e = new Array(t); ++n < t;) + for (var r, u = -1, i = e[n] = new Array(r); ++u < r;) i[u] = arguments[u][n]; + return e + }, ta.transpose = function(n) { + return ta.zip.apply(ta, n) + }, ta.keys = function(n) { + var t = []; + for (var e in n) t.push(e); + return t + }, ta.values = function(n) { + var t = []; + for (var e in n) t.push(n[e]); + return t + }, ta.entries = function(n) { + var t = []; + for (var e in n) t.push({ + key: e, + value: n[e] + }); + return t + }, ta.merge = function(n) { + for (var t, e, r, u = n.length, i = -1, o = 0; ++i < u;) o += n[i].length; + for (e = new Array(o); --u >= 0;) + for (r = n[u], t = r.length; --t >= 0;) e[--o] = r[t]; + return e + }; + var ga = Math.abs; + ta.range = function(n, t, e) { + if (arguments.length < 3 && (e = 1, arguments.length < 2 && (t = n, n = 0)), (t - n) / e === 1 / 0) throw new Error("infinite range"); + var r, u = [], + i = a(ga(e)), + o = -1; + if (n *= i, t *= i, e *= i, 0 > e) + for (; + (r = n + e * ++o) > t;) u.push(r / i); + else + for (; + (r = n + e * ++o) < t;) u.push(r / i); + return u + }, ta.map = function(n, t) { + var e = new l; + if (n instanceof l) n.forEach(function(n, t) { + e.set(n, t) + }); + else if (Array.isArray(n)) { + var r, u = -1, + i = n.length; + if (1 === arguments.length) + for (; ++u < i;) e.set(u, n[u]); + else + for (; ++u < i;) e.set(t.call(n, r = n[u], u), r) + } else + for (var o in n) e.set(o, n[o]); + return e + }; + var pa = "__proto__", + va = "\x00"; + c(l, { + has: h, + get: function(n) { + return this._[s(n)] + }, + set: function(n, t) { + return this._[s(n)] = t + }, + remove: g, + keys: p, + values: function() { + var n = []; + for (var t in this._) n.push(this._[t]); + return n + }, + entries: function() { + var n = []; + for (var t in this._) n.push({ + key: f(t), + value: this._[t] + }); + return n + }, + size: v, + empty: d, + forEach: function(n) { + for (var t in this._) n.call(this, f(t), this._[t]) + } + }), ta.nest = function() { + function n(t, o, a) { + if (a >= i.length) return r ? r.call(u, o) : e ? o.sort(e) : o; + for (var c, s, f, h, g = -1, p = o.length, v = i[a++], d = new l; ++g < p;)(h = d.get(c = v(s = o[g]))) ? h.push(s) : d.set(c, [s]); + return t ? (s = t(), f = function(e, r) { + s.set(e, n(t, r, a)) + }) : (s = {}, f = function(e, r) { + s[e] = n(t, r, a) + }), d.forEach(f), s + } + + function t(n, e) { + if (e >= i.length) return n; + var r = [], + u = o[e++]; + return n.forEach(function(n, u) { + r.push({ + key: n, + values: t(u, e) + }) + }), u ? r.sort(function(n, t) { + return u(n.key, t.key) + }) : r + } + var e, r, u = {}, + i = [], + o = []; + return u.map = function(t, e) { + return n(e, t, 0) + }, u.entries = function(e) { + return t(n(ta.map, e, 0), 0) + }, u.key = function(n) { + return i.push(n), u + }, u.sortKeys = function(n) { + return o[i.length - 1] = n, u + }, u.sortValues = function(n) { + return e = n, u + }, u.rollup = function(n) { + return r = n, u + }, u + }, ta.set = function(n) { + var t = new m; + if (n) + for (var e = 0, r = n.length; r > e; ++e) t.add(n[e]); + return t + }, c(m, { + has: h, + add: function(n) { + return this._[s(n += "")] = !0, n + }, + remove: g, + values: p, + size: v, + empty: d, + forEach: function(n) { + for (var t in this._) n.call(this, f(t)) + } + }), ta.behavior = {}, ta.rebind = function(n, t) { + for (var e, r = 1, u = arguments.length; ++r < u;) n[e = arguments[r]] = M(n, t, t[e]); + return n + }; + var da = ["webkit", "ms", "moz", "Moz", "o", "O"]; + ta.dispatch = function() { + for (var n = new _, t = -1, e = arguments.length; ++t < e;) n[arguments[t]] = w(n); + return n + }, _.prototype.on = function(n, t) { + var e = n.indexOf("."), + r = ""; + if (e >= 0 && (r = n.slice(e + 1), n = n.slice(0, e)), n) return arguments.length < 2 ? this[n].on(r) : this[n].on(r, t); + if (2 === arguments.length) { + if (null == t) + for (n in this) this.hasOwnProperty(n) && this[n].on(r, null); + return this + } + }, ta.event = null, ta.requote = function(n) { + return n.replace(ma, "\\$&") + }; + var ma = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g, + ya = {}.__proto__ ? function(n, t) { + n.__proto__ = t + } : function(n, t) { + for (var e in t) n[e] = t[e] + }, + Ma = function(n, t) { + return t.querySelector(n) + }, + xa = function(n, t) { + return t.querySelectorAll(n) + }, + ba = function(n, t) { + var e = n.matches || n[x(n, "matchesSelector")]; + return (ba = function(n, t) { + return e.call(n, t) + })(n, t) + }; + "function" == typeof Sizzle && (Ma = function(n, t) { + return Sizzle(n, t)[0] || null + }, xa = Sizzle, ba = Sizzle.matchesSelector), ta.selection = function() { + return ta.select(ua.documentElement) + }; + var _a = ta.selection.prototype = []; + _a.select = function(n) { + var t, e, r, u, i = []; + n = N(n); + for (var o = -1, a = this.length; ++o < a;) { + i.push(t = []), t.parentNode = (r = this[o]).parentNode; + for (var c = -1, l = r.length; ++c < l;)(u = r[c]) ? (t.push(e = n.call(u, u.__data__, c, o)), e && "__data__" in u && (e.__data__ = u.__data__)) : t.push(null) + } + return A(i) + }, _a.selectAll = function(n) { + var t, e, r = []; + n = C(n); + for (var u = -1, i = this.length; ++u < i;) + for (var o = this[u], a = -1, c = o.length; ++a < c;)(e = o[a]) && (r.push(t = ra(n.call(e, e.__data__, a, u))), t.parentNode = e); + return A(r) + }; + var wa = { + svg: "http://www.w3.org/2000/svg", + xhtml: "http://www.w3.org/1999/xhtml", + xlink: "http://www.w3.org/1999/xlink", + xml: "http://www.w3.org/XML/1998/namespace", + xmlns: "http://www.w3.org/2000/xmlns/" + }; + ta.ns = { + prefix: wa, + qualify: function(n) { + var t = n.indexOf(":"), + e = n; + return t >= 0 && (e = n.slice(0, t), n = n.slice(t + 1)), wa.hasOwnProperty(e) ? { + space: wa[e], + local: n + } : n + } + }, _a.attr = function(n, t) { + if (arguments.length < 2) { + if ("string" == typeof n) { + var e = this.node(); + return n = ta.ns.qualify(n), n.local ? e.getAttributeNS(n.space, n.local) : e.getAttribute(n) + } + for (t in n) this.each(z(t, n[t])); + return this + } + return this.each(z(n, t)) + }, _a.classed = function(n, t) { + if (arguments.length < 2) { + if ("string" == typeof n) { + var e = this.node(), + r = (n = T(n)).length, + u = -1; + if (t = e.classList) { + for (; ++u < r;) + if (!t.contains(n[u])) return !1 + } else + for (t = e.getAttribute("class"); ++u < r;) + if (!L(n[u]).test(t)) return !1; + return !0 + } + for (t in n) this.each(R(t, n[t])); + return this + } + return this.each(R(n, t)) + }, _a.style = function(n, e, r) { + var u = arguments.length; + if (3 > u) { + if ("string" != typeof n) { + 2 > u && (e = ""); + for (r in n) this.each(P(r, n[r], e)); + return this + } + if (2 > u) { + var i = this.node(); + return t(i).getComputedStyle(i, null).getPropertyValue(n) + } + r = "" + } + return this.each(P(n, e, r)) + }, _a.property = function(n, t) { + if (arguments.length < 2) { + if ("string" == typeof n) return this.node()[n]; + for (t in n) this.each(U(t, n[t])); + return this + } + return this.each(U(n, t)) + }, _a.text = function(n) { + return arguments.length ? this.each("function" == typeof n ? function() { + var t = n.apply(this, arguments); + this.textContent = null == t ? "" : t + } : null == n ? function() { + this.textContent = "" + } : function() { + this.textContent = n + }) : this.node().textContent + }, _a.html = function(n) { + return arguments.length ? this.each("function" == typeof n ? function() { + var t = n.apply(this, arguments); + this.innerHTML = null == t ? "" : t + } : null == n ? function() { + this.innerHTML = "" + } : function() { + this.innerHTML = n + }) : this.node().innerHTML + }, _a.append = function(n) { + return n = j(n), this.select(function() { + return this.appendChild(n.apply(this, arguments)) + }) + }, _a.insert = function(n, t) { + return n = j(n), t = N(t), this.select(function() { + return this.insertBefore(n.apply(this, arguments), t.apply(this, arguments) || null) + }) + }, _a.remove = function() { + return this.each(F) + }, _a.data = function(n, t) { + function e(n, e) { + var r, u, i, o = n.length, + f = e.length, + h = Math.min(o, f), + g = new Array(f), + p = new Array(f), + v = new Array(o); + if (t) { + var d, m = new l, + y = new Array(o); + for (r = -1; ++r < o;) m.has(d = t.call(u = n[r], u.__data__, r)) ? v[r] = u : m.set(d, u), y[r] = d; + for (r = -1; ++r < f;)(u = m.get(d = t.call(e, i = e[r], r))) ? u !== !0 && (g[r] = u, u.__data__ = i) : p[r] = H(i), m.set(d, !0); + for (r = -1; ++r < o;) m.get(y[r]) !== !0 && (v[r] = n[r]) + } else { + for (r = -1; ++r < h;) u = n[r], i = e[r], u ? (u.__data__ = i, g[r] = u) : p[r] = H(i); + for (; f > r; ++r) p[r] = H(e[r]); + for (; o > r; ++r) v[r] = n[r] + } + p.update = g, p.parentNode = g.parentNode = v.parentNode = n.parentNode, a.push(p), c.push(g), s.push(v) + } + var r, u, i = -1, + o = this.length; + if (!arguments.length) { + for (n = new Array(o = (r = this[0]).length); ++i < o;)(u = r[i]) && (n[i] = u.__data__); + return n + } + var a = Z([]), + c = A([]), + s = A([]); + if ("function" == typeof n) + for (; ++i < o;) e(r = this[i], n.call(r, r.parentNode.__data__, i)); + else + for (; ++i < o;) e(r = this[i], n); + return c.enter = function() { + return a + }, c.exit = function() { + return s + }, c + }, _a.datum = function(n) { + return arguments.length ? this.property("__data__", n) : this.property("__data__") + }, _a.filter = function(n) { + var t, e, r, u = []; + "function" != typeof n && (n = O(n)); + for (var i = 0, o = this.length; o > i; i++) { + u.push(t = []), t.parentNode = (e = this[i]).parentNode; + for (var a = 0, c = e.length; c > a; a++)(r = e[a]) && n.call(r, r.__data__, a, i) && t.push(r) + } + return A(u) + }, _a.order = function() { + for (var n = -1, t = this.length; ++n < t;) + for (var e, r = this[n], u = r.length - 1, i = r[u]; --u >= 0;)(e = r[u]) && (i && i !== e.nextSibling && i.parentNode.insertBefore(e, i), i = e); + return this + }, _a.sort = function(n) { + n = I.apply(this, arguments); + for (var t = -1, e = this.length; ++t < e;) this[t].sort(n); + return this.order() + }, _a.each = function(n) { + return Y(this, function(t, e, r) { + n.call(t, t.__data__, e, r) + }) + }, _a.call = function(n) { + var t = ra(arguments); + return n.apply(t[0] = this, t), this + }, _a.empty = function() { + return !this.node() + }, _a.node = function() { + for (var n = 0, t = this.length; t > n; n++) + for (var e = this[n], r = 0, u = e.length; u > r; r++) { + var i = e[r]; + if (i) return i + } + return null + }, _a.size = function() { + var n = 0; + return Y(this, function() { + ++n + }), n + }; + var Sa = []; + ta.selection.enter = Z, ta.selection.enter.prototype = Sa, Sa.append = _a.append, Sa.empty = _a.empty, Sa.node = _a.node, Sa.call = _a.call, Sa.size = _a.size, Sa.select = function(n) { + for (var t, e, r, u, i, o = [], a = -1, c = this.length; ++a < c;) { + r = (u = this[a]).update, o.push(t = []), t.parentNode = u.parentNode; + for (var l = -1, s = u.length; ++l < s;)(i = u[l]) ? (t.push(r[l] = e = n.call(u.parentNode, i.__data__, l, a)), e.__data__ = i.__data__) : t.push(null) + } + return A(o) + }, Sa.insert = function(n, t) { + return arguments.length < 2 && (t = V(this)), _a.insert.call(this, n, t) + }, ta.select = function(t) { + var e; + return "string" == typeof t ? (e = [Ma(t, ua)], e.parentNode = ua.documentElement) : (e = [t], e.parentNode = n(t)), A([e]) + }, ta.selectAll = function(n) { + var t; + return "string" == typeof n ? (t = ra(xa(n, ua)), t.parentNode = ua.documentElement) : (t = n, t.parentNode = null), A([t]) + }, _a.on = function(n, t, e) { + var r = arguments.length; + if (3 > r) { + if ("string" != typeof n) { + 2 > r && (t = !1); + for (e in n) this.each(X(e, n[e], t)); + return this + } + if (2 > r) return (r = this.node()["__on" + n]) && r._; + e = !1 + } + return this.each(X(n, t, e)) + }; + var ka = ta.map({ + mouseenter: "mouseover", + mouseleave: "mouseout" + }); + ua && ka.forEach(function(n) { + "on" + n in ua && ka.remove(n) + }); + var Ea, Aa = 0; + ta.mouse = function(n) { + return J(n, k()) + }; + var Na = this.navigator && /WebKit/.test(this.navigator.userAgent) ? -1 : 0; + ta.touch = function(n, t, e) { + if (arguments.length < 3 && (e = t, t = k().changedTouches), t) + for (var r, u = 0, i = t.length; i > u; ++u) + if ((r = t[u]).identifier === e) return J(n, r) + }, ta.behavior.drag = function() { + function n() { + this.on("mousedown.drag", i).on("touchstart.drag", o) + } + + function e(n, t, e, i, o) { + return function() { + function a() { + var n, e, r = t(h, v); + r && (n = r[0] - M[0], e = r[1] - M[1], p |= n | e, M = r, g({ + type: "drag", + x: r[0] + l[0], + y: r[1] + l[1], + dx: n, + dy: e + })) + } + + function c() { + t(h, v) && (m.on(i + d, null).on(o + d, null), y(p && ta.event.target === f), g({ + type: "dragend" + })) + } + var l, s = this, + f = ta.event.target, + h = s.parentNode, + g = r.of(s, arguments), + p = 0, + v = n(), + d = ".drag" + (null == v ? "" : "-" + v), + m = ta.select(e(f)).on(i + d, a).on(o + d, c), + y = W(f), + M = t(h, v); + u ? (l = u.apply(s, arguments), l = [l.x - M[0], l.y - M[1]]) : l = [0, 0], g({ + type: "dragstart" + }) + } + } + var r = E(n, "drag", "dragstart", "dragend"), + u = null, + i = e(b, ta.mouse, t, "mousemove", "mouseup"), + o = e(G, ta.touch, y, "touchmove", "touchend"); + return n.origin = function(t) { + return arguments.length ? (u = t, n) : u + }, ta.rebind(n, r, "on") + }, ta.touches = function(n, t) { + return arguments.length < 2 && (t = k().touches), t ? ra(t).map(function(t) { + var e = J(n, t); + return e.identifier = t.identifier, e + }) : [] + }; + var Ca = 1e-6, + za = Ca * Ca, + qa = Math.PI, + La = 2 * qa, + Ta = La - Ca, + Ra = qa / 2, + Da = qa / 180, + Pa = 180 / qa, + Ua = Math.SQRT2, + ja = 2, + Fa = 4; + ta.interpolateZoom = function(n, t) { + function e(n) { + var t = n * y; + if (m) { + var e = rt(v), + o = i / (ja * h) * (e * ut(Ua * t + v) - et(v)); + return [r + o * l, u + o * s, i * e / rt(Ua * t + v)] + } + return [r + n * l, u + n * s, i * Math.exp(Ua * t)] + } + var r = n[0], + u = n[1], + i = n[2], + o = t[0], + a = t[1], + c = t[2], + l = o - r, + s = a - u, + f = l * l + s * s, + h = Math.sqrt(f), + g = (c * c - i * i + Fa * f) / (2 * i * ja * h), + p = (c * c - i * i - Fa * f) / (2 * c * ja * h), + v = Math.log(Math.sqrt(g * g + 1) - g), + d = Math.log(Math.sqrt(p * p + 1) - p), + m = d - v, + y = (m || Math.log(c / i)) / Ua; + return e.duration = 1e3 * y, e + }, ta.behavior.zoom = function() { + function n(n) { + n.on(q, f).on(Oa + ".zoom", g).on("dblclick.zoom", p).on(R, h) + } + + function e(n) { + return [(n[0] - k.x) / k.k, (n[1] - k.y) / k.k] + } + + function r(n) { + return [n[0] * k.k + k.x, n[1] * k.k + k.y] + } + + function u(n) { + k.k = Math.max(N[0], Math.min(N[1], n)) + } + + function i(n, t) { + t = r(t), k.x += n[0] - t[0], k.y += n[1] - t[1] + } + + function o(t, e, r, o) { + t.__chart__ = { + x: k.x, + y: k.y, + k: k.k + }, u(Math.pow(2, o)), i(d = e, r), t = ta.select(t), C > 0 && (t = t.transition().duration(C)), t.call(n.event) + } + + function a() { + b && b.domain(x.range().map(function(n) { + return (n - k.x) / k.k + }).map(x.invert)), w && w.domain(_.range().map(function(n) { + return (n - k.y) / k.k + }).map(_.invert)) + } + + function c(n) { + z++ || n({ + type: "zoomstart" + }) + } + + function l(n) { + a(), n({ + type: "zoom", + scale: k.k, + translate: [k.x, k.y] + }) + } + + function s(n) { + --z || n({ + type: "zoomend" + }), d = null + } + + function f() { + function n() { + f = 1, i(ta.mouse(u), g), l(a) + } + + function r() { + h.on(L, null).on(T, null), p(f && ta.event.target === o), s(a) + } + var u = this, + o = ta.event.target, + a = D.of(u, arguments), + f = 0, + h = ta.select(t(u)).on(L, n).on(T, r), + g = e(ta.mouse(u)), + p = W(u); + Dl.call(u), c(a) + } + + function h() { + function n() { + var n = ta.touches(p); + return g = k.k, n.forEach(function(n) { + n.identifier in d && (d[n.identifier] = e(n)) + }), n + } + + function t() { + var t = ta.event.target; + ta.select(t).on(x, r).on(b, a), _.push(t); + for (var e = ta.event.changedTouches, u = 0, i = e.length; i > u; ++u) d[e[u].identifier] = null; + var c = n(), + l = Date.now(); + if (1 === c.length) { + if (500 > l - M) { + var s = c[0]; + o(p, s, d[s.identifier], Math.floor(Math.log(k.k) / Math.LN2) + 1), S() + } + M = l + } else if (c.length > 1) { + var s = c[0], + f = c[1], + h = s[0] - f[0], + g = s[1] - f[1]; + m = h * h + g * g + } + } + + function r() { + var n, t, e, r, o = ta.touches(p); + Dl.call(p); + for (var a = 0, c = o.length; c > a; ++a, r = null) + if (e = o[a], r = d[e.identifier]) { + if (t) break; + n = e, t = r + } if (r) { + var s = (s = e[0] - n[0]) * s + (s = e[1] - n[1]) * s, + f = m && Math.sqrt(s / m); + n = [(n[0] + e[0]) / 2, (n[1] + e[1]) / 2], t = [(t[0] + r[0]) / 2, (t[1] + r[1]) / 2], u(f * g) + } + M = null, i(n, t), l(v) + } + + function a() { + if (ta.event.touches.length) { + for (var t = ta.event.changedTouches, e = 0, r = t.length; r > e; ++e) delete d[t[e].identifier]; + for (var u in d) return void n() + } + ta.selectAll(_).on(y, null), w.on(q, f).on(R, h), E(), s(v) + } + var g, p = this, + v = D.of(p, arguments), + d = {}, + m = 0, + y = ".zoom-" + ta.event.changedTouches[0].identifier, + x = "touchmove" + y, + b = "touchend" + y, + _ = [], + w = ta.select(p), + E = W(p); + t(), c(v), w.on(q, null).on(R, t) + } + + function g() { + var n = D.of(this, arguments); + y ? clearTimeout(y) : (v = e(d = m || ta.mouse(this)), Dl.call(this), c(n)), y = setTimeout(function() { + y = null, s(n) + }, 50), S(), u(Math.pow(2, .002 * Ha()) * k.k), i(d, v), l(n) + } + + function p() { + var n = ta.mouse(this), + t = Math.log(k.k) / Math.LN2; + o(this, n, e(n), ta.event.shiftKey ? Math.ceil(t) - 1 : Math.floor(t) + 1) + } + var v, d, m, y, M, x, b, _, w, k = { + x: 0, + y: 0, + k: 1 + }, + A = [960, 500], + N = Ia, + C = 250, + z = 0, + q = "mousedown.zoom", + L = "mousemove.zoom", + T = "mouseup.zoom", + R = "touchstart.zoom", + D = E(n, "zoomstart", "zoom", "zoomend"); + return Oa || (Oa = "onwheel" in ua ? (Ha = function() { + return -ta.event.deltaY * (ta.event.deltaMode ? 120 : 1) + }, "wheel") : "onmousewheel" in ua ? (Ha = function() { + return ta.event.wheelDelta + }, "mousewheel") : (Ha = function() { + return -ta.event.detail + }, "MozMousePixelScroll")), n.event = function(n) { + n.each(function() { + var n = D.of(this, arguments), + t = k; + Tl ? ta.select(this).transition().each("start.zoom", function() { + k = this.__chart__ || { + x: 0, + y: 0, + k: 1 + }, c(n) + }).tween("zoom:zoom", function() { + var e = A[0], + r = A[1], + u = d ? d[0] : e / 2, + i = d ? d[1] : r / 2, + o = ta.interpolateZoom([(u - k.x) / k.k, (i - k.y) / k.k, e / k.k], [(u - t.x) / t.k, (i - t.y) / t.k, e / t.k]); + return function(t) { + var r = o(t), + a = e / r[2]; + this.__chart__ = k = { + x: u - r[0] * a, + y: i - r[1] * a, + k: a + }, l(n) + } + }).each("interrupt.zoom", function() { + s(n) + }).each("end.zoom", function() { + s(n) + }) : (this.__chart__ = k, c(n), l(n), s(n)) + }) + }, n.translate = function(t) { + return arguments.length ? (k = { + x: +t[0], + y: +t[1], + k: k.k + }, a(), n) : [k.x, k.y] + }, n.scale = function(t) { + return arguments.length ? (k = { + x: k.x, + y: k.y, + k: +t + }, a(), n) : k.k + }, n.scaleExtent = function(t) { + return arguments.length ? (N = null == t ? Ia : [+t[0], +t[1]], n) : N + }, n.center = function(t) { + return arguments.length ? (m = t && [+t[0], +t[1]], n) : m + }, n.size = function(t) { + return arguments.length ? (A = t && [+t[0], +t[1]], n) : A + }, n.duration = function(t) { + return arguments.length ? (C = +t, n) : C + }, n.x = function(t) { + return arguments.length ? (b = t, x = t.copy(), k = { + x: 0, + y: 0, + k: 1 + }, n) : b + }, n.y = function(t) { + return arguments.length ? (w = t, _ = t.copy(), k = { + x: 0, + y: 0, + k: 1 + }, n) : w + }, ta.rebind(n, D, "on") + }; + var Ha, Oa, Ia = [0, 1 / 0]; + ta.color = ot, ot.prototype.toString = function() { + return this.rgb() + "" + }, ta.hsl = at; + var Ya = at.prototype = new ot; + Ya.brighter = function(n) { + return n = Math.pow(.7, arguments.length ? n : 1), new at(this.h, this.s, this.l / n) + }, Ya.darker = function(n) { + return n = Math.pow(.7, arguments.length ? n : 1), new at(this.h, this.s, n * this.l) + }, Ya.rgb = function() { + return ct(this.h, this.s, this.l) + }, ta.hcl = lt; + var Za = lt.prototype = new ot; + Za.brighter = function(n) { + return new lt(this.h, this.c, Math.min(100, this.l + Va * (arguments.length ? n : 1))) + }, Za.darker = function(n) { + return new lt(this.h, this.c, Math.max(0, this.l - Va * (arguments.length ? n : 1))) + }, Za.rgb = function() { + return st(this.h, this.c, this.l).rgb() + }, ta.lab = ft; + var Va = 18, + Xa = .95047, + $a = 1, + Ba = 1.08883, + Wa = ft.prototype = new ot; + Wa.brighter = function(n) { + return new ft(Math.min(100, this.l + Va * (arguments.length ? n : 1)), this.a, this.b) + }, Wa.darker = function(n) { + return new ft(Math.max(0, this.l - Va * (arguments.length ? n : 1)), this.a, this.b) + }, Wa.rgb = function() { + return ht(this.l, this.a, this.b) + }, ta.rgb = mt; + var Ja = mt.prototype = new ot; + Ja.brighter = function(n) { + n = Math.pow(.7, arguments.length ? n : 1); + var t = this.r, + e = this.g, + r = this.b, + u = 30; + return t || e || r ? (t && u > t && (t = u), e && u > e && (e = u), r && u > r && (r = u), new mt(Math.min(255, t / n), Math.min(255, e / n), Math.min(255, r / n))) : new mt(u, u, u) + }, Ja.darker = function(n) { + return n = Math.pow(.7, arguments.length ? n : 1), new mt(n * this.r, n * this.g, n * this.b) + }, Ja.hsl = function() { + return _t(this.r, this.g, this.b) + }, Ja.toString = function() { + return "#" + xt(this.r) + xt(this.g) + xt(this.b) + }; + var Ga = ta.map({ + aliceblue: 15792383, + antiquewhite: 16444375, + aqua: 65535, + aquamarine: 8388564, + azure: 15794175, + beige: 16119260, + bisque: 16770244, + black: 0, + blanchedalmond: 16772045, + blue: 255, + blueviolet: 9055202, + brown: 10824234, + burlywood: 14596231, + cadetblue: 6266528, + chartreuse: 8388352, + chocolate: 13789470, + coral: 16744272, + cornflowerblue: 6591981, + cornsilk: 16775388, + crimson: 14423100, + cyan: 65535, + darkblue: 139, + darkcyan: 35723, + darkgoldenrod: 12092939, + darkgray: 11119017, + darkgreen: 25600, + darkgrey: 11119017, + darkkhaki: 12433259, + darkmagenta: 9109643, + darkolivegreen: 5597999, + darkorange: 16747520, + darkorchid: 10040012, + darkred: 9109504, + darksalmon: 15308410, + darkseagreen: 9419919, + darkslateblue: 4734347, + darkslategray: 3100495, + darkslategrey: 3100495, + darkturquoise: 52945, + darkviolet: 9699539, + deeppink: 16716947, + deepskyblue: 49151, + dimgray: 6908265, + dimgrey: 6908265, + dodgerblue: 2003199, + firebrick: 11674146, + floralwhite: 16775920, + forestgreen: 2263842, + fuchsia: 16711935, + gainsboro: 14474460, + ghostwhite: 16316671, + gold: 16766720, + goldenrod: 14329120, + gray: 8421504, + green: 32768, + greenyellow: 11403055, + grey: 8421504, + honeydew: 15794160, + hotpink: 16738740, + indianred: 13458524, + indigo: 4915330, + ivory: 16777200, + khaki: 15787660, + lavender: 15132410, + lavenderblush: 16773365, + lawngreen: 8190976, + lemonchiffon: 16775885, + lightblue: 11393254, + lightcoral: 15761536, + lightcyan: 14745599, + lightgoldenrodyellow: 16448210, + lightgray: 13882323, + lightgreen: 9498256, + lightgrey: 13882323, + lightpink: 16758465, + lightsalmon: 16752762, + lightseagreen: 2142890, + lightskyblue: 8900346, + lightslategray: 7833753, + lightslategrey: 7833753, + lightsteelblue: 11584734, + lightyellow: 16777184, + lime: 65280, + limegreen: 3329330, + linen: 16445670, + magenta: 16711935, + maroon: 8388608, + mediumaquamarine: 6737322, + mediumblue: 205, + mediumorchid: 12211667, + mediumpurple: 9662683, + mediumseagreen: 3978097, + mediumslateblue: 8087790, + mediumspringgreen: 64154, + mediumturquoise: 4772300, + mediumvioletred: 13047173, + midnightblue: 1644912, + mintcream: 16121850, + mistyrose: 16770273, + moccasin: 16770229, + navajowhite: 16768685, + navy: 128, + oldlace: 16643558, + olive: 8421376, + olivedrab: 7048739, + orange: 16753920, + orangered: 16729344, + orchid: 14315734, + palegoldenrod: 15657130, + palegreen: 10025880, + paleturquoise: 11529966, + palevioletred: 14381203, + papayawhip: 16773077, + peachpuff: 16767673, + peru: 13468991, + pink: 16761035, + plum: 14524637, + powderblue: 11591910, + purple: 8388736, + rebeccapurple: 6697881, + red: 16711680, + rosybrown: 12357519, + royalblue: 4286945, + saddlebrown: 9127187, + salmon: 16416882, + sandybrown: 16032864, + seagreen: 3050327, + seashell: 16774638, + sienna: 10506797, + silver: 12632256, + skyblue: 8900331, + slateblue: 6970061, + slategray: 7372944, + slategrey: 7372944, + snow: 16775930, + springgreen: 65407, + steelblue: 4620980, + tan: 13808780, + teal: 32896, + thistle: 14204888, + tomato: 16737095, + turquoise: 4251856, + violet: 15631086, + wheat: 16113331, + white: 16777215, + whitesmoke: 16119285, + yellow: 16776960, + yellowgreen: 10145074 + }); + Ga.forEach(function(n, t) { + Ga.set(n, yt(t)) + }), ta.functor = Et, ta.xhr = At(y), ta.dsv = function(n, t) { + function e(n, e, i) { + arguments.length < 3 && (i = e, e = null); + var o = Nt(n, t, null == e ? r : u(e), i); + return o.row = function(n) { + return arguments.length ? o.response(null == (e = n) ? r : u(n)) : e + }, o + } + + function r(n) { + return e.parse(n.responseText) + } + + function u(n) { + return function(t) { + return e.parse(t.responseText, n) + } + } + + function i(t) { + return t.map(o).join(n) + } + + function o(n) { + return a.test(n) ? '"' + n.replace(/\"/g, '""') + '"' : n + } + var a = new RegExp('["' + n + "\n]"), + c = n.charCodeAt(0); + return e.parse = function(n, t) { + var r; + return e.parseRows(n, function(n, e) { + if (r) return r(n, e - 1); + var u = new Function("d", "return {" + n.map(function(n, t) { + return JSON.stringify(n) + ": d[" + t + "]" + }).join(",") + "}"); + r = t ? function(n, e) { + return t(u(n), e) + } : u + }) + }, e.parseRows = function(n, t) { + function e() { + if (s >= l) return o; + if (u) return u = !1, i; + var t = s; + if (34 === n.charCodeAt(t)) { + for (var e = t; e++ < l;) + if (34 === n.charCodeAt(e)) { + if (34 !== n.charCodeAt(e + 1)) break; + ++e + } s = e + 2; + var r = n.charCodeAt(e + 1); + return 13 === r ? (u = !0, 10 === n.charCodeAt(e + 2) && ++s) : 10 === r && (u = !0), n.slice(t + 1, e).replace(/""/g, '"') + } + for (; l > s;) { + var r = n.charCodeAt(s++), + a = 1; + if (10 === r) u = !0; + else if (13 === r) u = !0, 10 === n.charCodeAt(s) && (++s, ++a); + else if (r !== c) continue; + return n.slice(t, s - a) + } + return n.slice(t) + } + for (var r, u, i = {}, o = {}, a = [], l = n.length, s = 0, f = 0; + (r = e()) !== o;) { + for (var h = []; r !== i && r !== o;) h.push(r), r = e(); + t && null == (h = t(h, f++)) || a.push(h) + } + return a + }, e.format = function(t) { + if (Array.isArray(t[0])) return e.formatRows(t); + var r = new m, + u = []; + return t.forEach(function(n) { + for (var t in n) r.has(t) || u.push(r.add(t)) + }), [u.map(o).join(n)].concat(t.map(function(t) { + return u.map(function(n) { + return o(t[n]) + }).join(n) + })).join("\n") + }, e.formatRows = function(n) { + return n.map(i).join("\n") + }, e + }, ta.csv = ta.dsv(",", "text/csv"), ta.tsv = ta.dsv(" ", "text/tab-separated-values"); + var Ka, Qa, nc, tc, ec, rc = this[x(this, "requestAnimationFrame")] || function(n) { + setTimeout(n, 17) + }; + ta.timer = function(n, t, e) { + var r = arguments.length; + 2 > r && (t = 0), 3 > r && (e = Date.now()); + var u = e + t, + i = { + c: n, + t: u, + f: !1, + n: null + }; + Qa ? Qa.n = i : Ka = i, Qa = i, nc || (tc = clearTimeout(tc), nc = 1, rc(qt)) + }, ta.timer.flush = function() { + Lt(), Tt() + }, ta.round = function(n, t) { + return t ? Math.round(n * (t = Math.pow(10, t))) / t : Math.round(n) + }; + var uc = ["y", "z", "a", "f", "p", "n", "\xb5", "m", "", "k", "M", "G", "T", "P", "E", "Z", "Y"].map(Dt); + ta.formatPrefix = function(n, t) { + var e = 0; + return n && (0 > n && (n *= -1), t && (n = ta.round(n, Rt(n, t))), e = 1 + Math.floor(1e-12 + Math.log(n) / Math.LN10), e = Math.max(-24, Math.min(24, 3 * Math.floor((e - 1) / 3)))), uc[8 + e / 3] + }; + var ic = /(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i, + oc = ta.map({ + b: function(n) { + return n.toString(2) + }, + c: function(n) { + return String.fromCharCode(n) + }, + o: function(n) { + return n.toString(8) + }, + x: function(n) { + return n.toString(16) + }, + X: function(n) { + return n.toString(16).toUpperCase() + }, + g: function(n, t) { + return n.toPrecision(t) + }, + e: function(n, t) { + return n.toExponential(t) + }, + f: function(n, t) { + return n.toFixed(t) + }, + r: function(n, t) { + return (n = ta.round(n, Rt(n, t))).toFixed(Math.max(0, Math.min(20, Rt(n * (1 + 1e-15), t)))) + } + }), + ac = ta.time = {}, + cc = Date; + jt.prototype = { + getDate: function() { + return this._.getUTCDate() + }, + getDay: function() { + return this._.getUTCDay() + }, + getFullYear: function() { + return this._.getUTCFullYear() + }, + getHours: function() { + return this._.getUTCHours() + }, + getMilliseconds: function() { + return this._.getUTCMilliseconds() + }, + getMinutes: function() { + return this._.getUTCMinutes() + }, + getMonth: function() { + return this._.getUTCMonth() + }, + getSeconds: function() { + return this._.getUTCSeconds() + }, + getTime: function() { + return this._.getTime() + }, + getTimezoneOffset: function() { + return 0 + }, + valueOf: function() { + return this._.valueOf() + }, + setDate: function() { + lc.setUTCDate.apply(this._, arguments) + }, + setDay: function() { + lc.setUTCDay.apply(this._, arguments) + }, + setFullYear: function() { + lc.setUTCFullYear.apply(this._, arguments) + }, + setHours: function() { + lc.setUTCHours.apply(this._, arguments) + }, + setMilliseconds: function() { + lc.setUTCMilliseconds.apply(this._, arguments) + }, + setMinutes: function() { + lc.setUTCMinutes.apply(this._, arguments) + }, + setMonth: function() { + lc.setUTCMonth.apply(this._, arguments) + }, + setSeconds: function() { + lc.setUTCSeconds.apply(this._, arguments) + }, + setTime: function() { + lc.setTime.apply(this._, arguments) + } + }; + var lc = Date.prototype; + ac.year = Ft(function(n) { + return n = ac.day(n), n.setMonth(0, 1), n + }, function(n, t) { + n.setFullYear(n.getFullYear() + t) + }, function(n) { + return n.getFullYear() + }), ac.years = ac.year.range, ac.years.utc = ac.year.utc.range, ac.day = Ft(function(n) { + var t = new cc(2e3, 0); + return t.setFullYear(n.getFullYear(), n.getMonth(), n.getDate()), t + }, function(n, t) { + n.setDate(n.getDate() + t) + }, function(n) { + return n.getDate() - 1 + }), ac.days = ac.day.range, ac.days.utc = ac.day.utc.range, ac.dayOfYear = function(n) { + var t = ac.year(n); + return Math.floor((n - t - 6e4 * (n.getTimezoneOffset() - t.getTimezoneOffset())) / 864e5) + }, ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"].forEach(function(n, t) { + t = 7 - t; + var e = ac[n] = Ft(function(n) { + return (n = ac.day(n)).setDate(n.getDate() - (n.getDay() + t) % 7), n + }, function(n, t) { + n.setDate(n.getDate() + 7 * Math.floor(t)) + }, function(n) { + var e = ac.year(n).getDay(); + return Math.floor((ac.dayOfYear(n) + (e + t) % 7) / 7) - (e !== t) + }); + ac[n + "s"] = e.range, ac[n + "s"].utc = e.utc.range, ac[n + "OfYear"] = function(n) { + var e = ac.year(n).getDay(); + return Math.floor((ac.dayOfYear(n) + (e + t) % 7) / 7) + } + }), ac.week = ac.sunday, ac.weeks = ac.sunday.range, ac.weeks.utc = ac.sunday.utc.range, ac.weekOfYear = ac.sundayOfYear; + var sc = { + "-": "", + _: " ", + 0: "0" + }, + fc = /^\s*\d+/, + hc = /^%/; + ta.locale = function(n) { + return { + numberFormat: Pt(n), + timeFormat: Ot(n) + } + }; + var gc = ta.locale({ + decimal: ".", + thousands: ",", + grouping: [3], + currency: ["$", ""], + dateTime: "%a %b %e %X %Y", + date: "%m/%d/%Y", + time: "%H:%M:%S", + periods: ["AM", "PM"], + days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], + shortDays: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], + shortMonths: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] + }); + ta.format = gc.numberFormat, ta.geo = {}, ce.prototype = { + s: 0, + t: 0, + add: function(n) { + le(n, this.t, pc), le(pc.s, this.s, this), this.s ? this.t += pc.t : this.s = pc.t + }, + reset: function() { + this.s = this.t = 0 + }, + valueOf: function() { + return this.s + } + }; + var pc = new ce; + ta.geo.stream = function(n, t) { + n && vc.hasOwnProperty(n.type) ? vc[n.type](n, t) : se(n, t) + }; + var vc = { + Feature: function(n, t) { + se(n.geometry, t) + }, + FeatureCollection: function(n, t) { + for (var e = n.features, r = -1, u = e.length; ++r < u;) se(e[r].geometry, t) + } + }, + dc = { + Sphere: function(n, t) { + t.sphere() + }, + Point: function(n, t) { + n = n.coordinates, t.point(n[0], n[1], n[2]) + }, + MultiPoint: function(n, t) { + for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) n = e[r], t.point(n[0], n[1], n[2]) + }, + LineString: function(n, t) { + fe(n.coordinates, t, 0) + }, + MultiLineString: function(n, t) { + for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) fe(e[r], t, 0) + }, + Polygon: function(n, t) { + he(n.coordinates, t) + }, + MultiPolygon: function(n, t) { + for (var e = n.coordinates, r = -1, u = e.length; ++r < u;) he(e[r], t) + }, + GeometryCollection: function(n, t) { + for (var e = n.geometries, r = -1, u = e.length; ++r < u;) se(e[r], t) + } + }; + ta.geo.area = function(n) { + return mc = 0, ta.geo.stream(n, Mc), mc + }; + var mc, yc = new ce, + Mc = { + sphere: function() { + mc += 4 * qa + }, + point: b, + lineStart: b, + lineEnd: b, + polygonStart: function() { + yc.reset(), Mc.lineStart = ge + }, + polygonEnd: function() { + var n = 2 * yc; + mc += 0 > n ? 4 * qa + n : n, Mc.lineStart = Mc.lineEnd = Mc.point = b + } + }; + ta.geo.bounds = function() { + function n(n, t) { + M.push(x = [s = n, h = n]), f > t && (f = t), t > g && (g = t) + } + + function t(t, e) { + var r = pe([t * Da, e * Da]); + if (m) { + var u = de(m, r), + i = [u[1], -u[0], 0], + o = de(i, u); + Me(o), o = xe(o); + var c = t - p, + l = c > 0 ? 1 : -1, + v = o[0] * Pa * l, + d = ga(c) > 180; + if (d ^ (v > l * p && l * t > v)) { + var y = o[1] * Pa; + y > g && (g = y) + } else if (v = (v + 360) % 360 - 180, d ^ (v > l * p && l * t > v)) { + var y = -o[1] * Pa; + f > y && (f = y) + } else f > e && (f = e), e > g && (g = e); + d ? p > t ? a(s, t) > a(s, h) && (h = t) : a(t, h) > a(s, h) && (s = t) : h >= s ? (s > t && (s = t), t > h && (h = t)) : t > p ? a(s, t) > a(s, h) && (h = t) : a(t, h) > a(s, h) && (s = t) + } else n(t, e); + m = r, p = t + } + + function e() { + b.point = t + } + + function r() { + x[0] = s, x[1] = h, b.point = n, m = null + } + + function u(n, e) { + if (m) { + var r = n - p; + y += ga(r) > 180 ? r + (r > 0 ? 360 : -360) : r + } else v = n, d = e; + Mc.point(n, e), t(n, e) + } + + function i() { + Mc.lineStart() + } + + function o() { + u(v, d), Mc.lineEnd(), ga(y) > Ca && (s = -(h = 180)), x[0] = s, x[1] = h, m = null + } + + function a(n, t) { + return (t -= n) < 0 ? t + 360 : t + } + + function c(n, t) { + return n[0] - t[0] + } + + function l(n, t) { + return t[0] <= t[1] ? t[0] <= n && n <= t[1] : n < t[0] || t[1] < n + } + var s, f, h, g, p, v, d, m, y, M, x, b = { + point: n, + lineStart: e, + lineEnd: r, + polygonStart: function() { + b.point = u, b.lineStart = i, b.lineEnd = o, y = 0, Mc.polygonStart() + }, + polygonEnd: function() { + Mc.polygonEnd(), b.point = n, b.lineStart = e, b.lineEnd = r, 0 > yc ? (s = -(h = 180), f = -(g = 90)) : y > Ca ? g = 90 : -Ca > y && (f = -90), x[0] = s, x[1] = h + } + }; + return function(n) { + g = h = -(s = f = 1 / 0), M = [], ta.geo.stream(n, b); + var t = M.length; + if (t) { + M.sort(c); + for (var e, r = 1, u = M[0], i = [u]; t > r; ++r) e = M[r], l(e[0], u) || l(e[1], u) ? (a(u[0], e[1]) > a(u[0], u[1]) && (u[1] = e[1]), a(e[0], u[1]) > a(u[0], u[1]) && (u[0] = e[0])) : i.push(u = e); + for (var o, e, p = -1 / 0, t = i.length - 1, r = 0, u = i[t]; t >= r; u = e, ++r) e = i[r], (o = a(u[1], e[0])) > p && (p = o, s = e[0], h = u[1]) + } + return M = x = null, 1 / 0 === s || 1 / 0 === f ? [ + [0 / 0, 0 / 0], + [0 / 0, 0 / 0] + ] : [ + [s, f], + [h, g] + ] + } + }(), ta.geo.centroid = function(n) { + xc = bc = _c = wc = Sc = kc = Ec = Ac = Nc = Cc = zc = 0, ta.geo.stream(n, qc); + var t = Nc, + e = Cc, + r = zc, + u = t * t + e * e + r * r; + return za > u && (t = kc, e = Ec, r = Ac, Ca > bc && (t = _c, e = wc, r = Sc), u = t * t + e * e + r * r, za > u) ? [0 / 0, 0 / 0] : [Math.atan2(e, t) * Pa, tt(r / Math.sqrt(u)) * Pa] + }; + var xc, bc, _c, wc, Sc, kc, Ec, Ac, Nc, Cc, zc, qc = { + sphere: b, + point: _e, + lineStart: Se, + lineEnd: ke, + polygonStart: function() { + qc.lineStart = Ee + }, + polygonEnd: function() { + qc.lineStart = Se + } + }, + Lc = Le(Ne, Pe, je, [-qa, -qa / 2]), + Tc = 1e9; + ta.geo.clipExtent = function() { + var n, t, e, r, u, i, o = { + stream: function(n) { + return u && (u.valid = !1), u = i(n), u.valid = !0, u + }, + extent: function(a) { + return arguments.length ? (i = Ie(n = +a[0][0], t = +a[0][1], e = +a[1][0], r = +a[1][1]), u && (u.valid = !1, u = null), o) : [ + [n, t], + [e, r] + ] + } + }; + return o.extent([ + [0, 0], + [960, 500] + ]) + }, (ta.geo.conicEqualArea = function() { + return Ye(Ze) + }).raw = Ze, ta.geo.albers = function() { + return ta.geo.conicEqualArea().rotate([96, 0]).center([-.6, 38.7]).parallels([29.5, 45.5]).scale(1070) + }, ta.geo.albersUsa = function() { + function n(n) { + var i = n[0], + o = n[1]; + return t = null, e(i, o), t || (r(i, o), t) || u(i, o), t + } + var t, e, r, u, i = ta.geo.albers(), + o = ta.geo.conicEqualArea().rotate([154, 0]).center([-2, 58.5]).parallels([55, 65]), + a = ta.geo.conicEqualArea().rotate([157, 0]).center([-3, 19.9]).parallels([8, 18]), + c = { + point: function(n, e) { + t = [n, e] + } + }; + return n.invert = function(n) { + var t = i.scale(), + e = i.translate(), + r = (n[0] - e[0]) / t, + u = (n[1] - e[1]) / t; + return (u >= .12 && .234 > u && r >= -.425 && -.214 > r ? o : u >= .166 && .234 > u && r >= -.214 && -.115 > r ? a : i).invert(n) + }, n.stream = function(n) { + var t = i.stream(n), + e = o.stream(n), + r = a.stream(n); + return { + point: function(n, u) { + t.point(n, u), e.point(n, u), r.point(n, u) + }, + sphere: function() { + t.sphere(), e.sphere(), r.sphere() + }, + lineStart: function() { + t.lineStart(), e.lineStart(), r.lineStart() + }, + lineEnd: function() { + t.lineEnd(), e.lineEnd(), r.lineEnd() + }, + polygonStart: function() { + t.polygonStart(), e.polygonStart(), r.polygonStart() + }, + polygonEnd: function() { + t.polygonEnd(), e.polygonEnd(), r.polygonEnd() + } + } + }, n.precision = function(t) { + return arguments.length ? (i.precision(t), o.precision(t), a.precision(t), n) : i.precision() + }, n.scale = function(t) { + return arguments.length ? (i.scale(t), o.scale(.35 * t), a.scale(t), n.translate(i.translate())) : i.scale() + }, n.translate = function(t) { + if (!arguments.length) return i.translate(); + var l = i.scale(), + s = +t[0], + f = +t[1]; + return e = i.translate(t).clipExtent([ + [s - .455 * l, f - .238 * l], + [s + .455 * l, f + .238 * l] + ]).stream(c).point, r = o.translate([s - .307 * l, f + .201 * l]).clipExtent([ + [s - .425 * l + Ca, f + .12 * l + Ca], + [s - .214 * l - Ca, f + .234 * l - Ca] + ]).stream(c).point, u = a.translate([s - .205 * l, f + .212 * l]).clipExtent([ + [s - .214 * l + Ca, f + .166 * l + Ca], + [s - .115 * l - Ca, f + .234 * l - Ca] + ]).stream(c).point, n + }, n.scale(1070) + }; + var Rc, Dc, Pc, Uc, jc, Fc, Hc = { + point: b, + lineStart: b, + lineEnd: b, + polygonStart: function() { + Dc = 0, Hc.lineStart = Ve + }, + polygonEnd: function() { + Hc.lineStart = Hc.lineEnd = Hc.point = b, Rc += ga(Dc / 2) + } + }, + Oc = { + point: Xe, + lineStart: b, + lineEnd: b, + polygonStart: b, + polygonEnd: b + }, + Ic = { + point: We, + lineStart: Je, + lineEnd: Ge, + polygonStart: function() { + Ic.lineStart = Ke + }, + polygonEnd: function() { + Ic.point = We, Ic.lineStart = Je, Ic.lineEnd = Ge + } + }; + ta.geo.path = function() { + function n(n) { + return n && ("function" == typeof a && i.pointRadius(+a.apply(this, arguments)), o && o.valid || (o = u(i)), ta.geo.stream(n, o)), i.result() + } + + function t() { + return o = null, n + } + var e, r, u, i, o, a = 4.5; + return n.area = function(n) { + return Rc = 0, ta.geo.stream(n, u(Hc)), Rc + }, n.centroid = function(n) { + return _c = wc = Sc = kc = Ec = Ac = Nc = Cc = zc = 0, ta.geo.stream(n, u(Ic)), zc ? [Nc / zc, Cc / zc] : Ac ? [kc / Ac, Ec / Ac] : Sc ? [_c / Sc, wc / Sc] : [0 / 0, 0 / 0] + }, n.bounds = function(n) { + return jc = Fc = -(Pc = Uc = 1 / 0), ta.geo.stream(n, u(Oc)), [ + [Pc, Uc], + [jc, Fc] + ] + }, n.projection = function(n) { + return arguments.length ? (u = (e = n) ? n.stream || tr(n) : y, t()) : e + }, n.context = function(n) { + return arguments.length ? (i = null == (r = n) ? new $e : new Qe(n), "function" != typeof a && i.pointRadius(a), t()) : r + }, n.pointRadius = function(t) { + return arguments.length ? (a = "function" == typeof t ? t : (i.pointRadius(+t), +t), n) : a + }, n.projection(ta.geo.albersUsa()).context(null) + }, ta.geo.transform = function(n) { + return { + stream: function(t) { + var e = new er(t); + for (var r in n) e[r] = n[r]; + return e + } + } + }, er.prototype = { + point: function(n, t) { + this.stream.point(n, t) + }, + sphere: function() { + this.stream.sphere() + }, + lineStart: function() { + this.stream.lineStart() + }, + lineEnd: function() { + this.stream.lineEnd() + }, + polygonStart: function() { + this.stream.polygonStart() + }, + polygonEnd: function() { + this.stream.polygonEnd() + } + }, ta.geo.projection = ur, ta.geo.projectionMutator = ir, (ta.geo.equirectangular = function() { + return ur(ar) + }).raw = ar.invert = ar, ta.geo.rotation = function(n) { + function t(t) { + return t = n(t[0] * Da, t[1] * Da), t[0] *= Pa, t[1] *= Pa, t + } + return n = lr(n[0] % 360 * Da, n[1] * Da, n.length > 2 ? n[2] * Da : 0), t.invert = function(t) { + return t = n.invert(t[0] * Da, t[1] * Da), t[0] *= Pa, t[1] *= Pa, t + }, t + }, cr.invert = ar, ta.geo.circle = function() { + function n() { + var n = "function" == typeof r ? r.apply(this, arguments) : r, + t = lr(-n[0] * Da, -n[1] * Da, 0).invert, + u = []; + return e(null, null, 1, { + point: function(n, e) { + u.push(n = t(n, e)), n[0] *= Pa, n[1] *= Pa + } + }), { + type: "Polygon", + coordinates: [u] + } + } + var t, e, r = [0, 0], + u = 6; + return n.origin = function(t) { + return arguments.length ? (r = t, n) : r + }, n.angle = function(r) { + return arguments.length ? (e = gr((t = +r) * Da, u * Da), n) : t + }, n.precision = function(r) { + return arguments.length ? (e = gr(t * Da, (u = +r) * Da), n) : u + }, n.angle(90) + }, ta.geo.distance = function(n, t) { + var e, r = (t[0] - n[0]) * Da, + u = n[1] * Da, + i = t[1] * Da, + o = Math.sin(r), + a = Math.cos(r), + c = Math.sin(u), + l = Math.cos(u), + s = Math.sin(i), + f = Math.cos(i); + return Math.atan2(Math.sqrt((e = f * o) * e + (e = l * s - c * f * a) * e), c * s + l * f * a) + }, ta.geo.graticule = function() { + function n() { + return { + type: "MultiLineString", + coordinates: t() + } + } + + function t() { + return ta.range(Math.ceil(i / d) * d, u, d).map(h).concat(ta.range(Math.ceil(l / m) * m, c, m).map(g)).concat(ta.range(Math.ceil(r / p) * p, e, p).filter(function(n) { + return ga(n % d) > Ca + }).map(s)).concat(ta.range(Math.ceil(a / v) * v, o, v).filter(function(n) { + return ga(n % m) > Ca + }).map(f)) + } + var e, r, u, i, o, a, c, l, s, f, h, g, p = 10, + v = p, + d = 90, + m = 360, + y = 2.5; + return n.lines = function() { + return t().map(function(n) { + return { + type: "LineString", + coordinates: n + } + }) + }, n.outline = function() { + return { + type: "Polygon", + coordinates: [h(i).concat(g(c).slice(1), h(u).reverse().slice(1), g(l).reverse().slice(1))] + } + }, n.extent = function(t) { + return arguments.length ? n.majorExtent(t).minorExtent(t) : n.minorExtent() + }, n.majorExtent = function(t) { + return arguments.length ? (i = +t[0][0], u = +t[1][0], l = +t[0][1], c = +t[1][1], i > u && (t = i, i = u, u = t), l > c && (t = l, l = c, c = t), n.precision(y)) : [ + [i, l], + [u, c] + ] + }, n.minorExtent = function(t) { + return arguments.length ? (r = +t[0][0], e = +t[1][0], a = +t[0][1], o = +t[1][1], r > e && (t = r, r = e, e = t), a > o && (t = a, a = o, o = t), n.precision(y)) : [ + [r, a], + [e, o] + ] + }, n.step = function(t) { + return arguments.length ? n.majorStep(t).minorStep(t) : n.minorStep() + }, n.majorStep = function(t) { + return arguments.length ? (d = +t[0], m = +t[1], n) : [d, m] + }, n.minorStep = function(t) { + return arguments.length ? (p = +t[0], v = +t[1], n) : [p, v] + }, n.precision = function(t) { + return arguments.length ? (y = +t, s = vr(a, o, 90), f = dr(r, e, y), h = vr(l, c, 90), g = dr(i, u, y), n) : y + }, n.majorExtent([ + [-180, -90 + Ca], + [180, 90 - Ca] + ]).minorExtent([ + [-180, -80 - Ca], + [180, 80 + Ca] + ]) + }, ta.geo.greatArc = function() { + function n() { + return { + type: "LineString", + coordinates: [t || r.apply(this, arguments), e || u.apply(this, arguments)] + } + } + var t, e, r = mr, + u = yr; + return n.distance = function() { + return ta.geo.distance(t || r.apply(this, arguments), e || u.apply(this, arguments)) + }, n.source = function(e) { + return arguments.length ? (r = e, t = "function" == typeof e ? null : e, n) : r + }, n.target = function(t) { + return arguments.length ? (u = t, e = "function" == typeof t ? null : t, n) : u + }, n.precision = function() { + return arguments.length ? n : 0 + }, n + }, ta.geo.interpolate = function(n, t) { + return Mr(n[0] * Da, n[1] * Da, t[0] * Da, t[1] * Da) + }, ta.geo.length = function(n) { + return Yc = 0, ta.geo.stream(n, Zc), Yc + }; + var Yc, Zc = { + sphere: b, + point: b, + lineStart: xr, + lineEnd: b, + polygonStart: b, + polygonEnd: b + }, + Vc = br(function(n) { + return Math.sqrt(2 / (1 + n)) + }, function(n) { + return 2 * Math.asin(n / 2) + }); + (ta.geo.azimuthalEqualArea = function() { + return ur(Vc) + }).raw = Vc; + var Xc = br(function(n) { + var t = Math.acos(n); + return t && t / Math.sin(t) + }, y); + (ta.geo.azimuthalEquidistant = function() { + return ur(Xc) + }).raw = Xc, (ta.geo.conicConformal = function() { + return Ye(_r) + }).raw = _r, (ta.geo.conicEquidistant = function() { + return Ye(wr) + }).raw = wr; + var $c = br(function(n) { + return 1 / n + }, Math.atan); + (ta.geo.gnomonic = function() { + return ur($c) + }).raw = $c, Sr.invert = function(n, t) { + return [n, 2 * Math.atan(Math.exp(t)) - Ra] + }, (ta.geo.mercator = function() { + return kr(Sr) + }).raw = Sr; + var Bc = br(function() { + return 1 + }, Math.asin); + (ta.geo.orthographic = function() { + return ur(Bc) + }).raw = Bc; + var Wc = br(function(n) { + return 1 / (1 + n) + }, function(n) { + return 2 * Math.atan(n) + }); + (ta.geo.stereographic = function() { + return ur(Wc) + }).raw = Wc, Er.invert = function(n, t) { + return [-t, 2 * Math.atan(Math.exp(n)) - Ra] + }, (ta.geo.transverseMercator = function() { + var n = kr(Er), + t = n.center, + e = n.rotate; + return n.center = function(n) { + return n ? t([-n[1], n[0]]) : (n = t(), [n[1], -n[0]]) + }, n.rotate = function(n) { + return n ? e([n[0], n[1], n.length > 2 ? n[2] + 90 : 90]) : (n = e(), [n[0], n[1], n[2] - 90]) + }, e([0, 0, 90]) + }).raw = Er, ta.geom = {}, ta.geom.hull = function(n) { + function t(n) { + if (n.length < 3) return []; + var t, u = Et(e), + i = Et(r), + o = n.length, + a = [], + c = []; + for (t = 0; o > t; t++) a.push([+u.call(this, n[t], t), +i.call(this, n[t], t), t]); + for (a.sort(zr), t = 0; o > t; t++) c.push([a[t][0], -a[t][1]]); + var l = Cr(a), + s = Cr(c), + f = s[0] === l[0], + h = s[s.length - 1] === l[l.length - 1], + g = []; + for (t = l.length - 1; t >= 0; --t) g.push(n[a[l[t]][2]]); + for (t = +f; t < s.length - h; ++t) g.push(n[a[s[t]][2]]); + return g + } + var e = Ar, + r = Nr; + return arguments.length ? t(n) : (t.x = function(n) { + return arguments.length ? (e = n, t) : e + }, t.y = function(n) { + return arguments.length ? (r = n, t) : r + }, t) + }, ta.geom.polygon = function(n) { + return ya(n, Jc), n + }; + var Jc = ta.geom.polygon.prototype = []; + Jc.area = function() { + for (var n, t = -1, e = this.length, r = this[e - 1], u = 0; ++t < e;) n = r, r = this[t], u += n[1] * r[0] - n[0] * r[1]; + return .5 * u + }, Jc.centroid = function(n) { + var t, e, r = -1, + u = this.length, + i = 0, + o = 0, + a = this[u - 1]; + for (arguments.length || (n = -1 / (6 * this.area())); ++r < u;) t = a, a = this[r], e = t[0] * a[1] - a[0] * t[1], i += (t[0] + a[0]) * e, o += (t[1] + a[1]) * e; + return [i * n, o * n] + }, Jc.clip = function(n) { + for (var t, e, r, u, i, o, a = Tr(n), c = -1, l = this.length - Tr(this), s = this[l - 1]; ++c < l;) { + for (t = n.slice(), n.length = 0, u = this[c], i = t[(r = t.length - a) - 1], e = -1; ++e < r;) o = t[e], qr(o, s, u) ? (qr(i, s, u) || n.push(Lr(i, o, s, u)), n.push(o)) : qr(i, s, u) && n.push(Lr(i, o, s, u)), i = o; + a && n.push(n[0]), s = u + } + return n + }; + var Gc, Kc, Qc, nl, tl, el = [], + rl = []; + Or.prototype.prepare = function() { + for (var n, t = this.edges, e = t.length; e--;) n = t[e].edge, n.b && n.a || t.splice(e, 1); + return t.sort(Yr), t.length + }, Qr.prototype = { + start: function() { + return this.edge.l === this.site ? this.edge.a : this.edge.b + }, + end: function() { + return this.edge.l === this.site ? this.edge.b : this.edge.a + } + }, nu.prototype = { + insert: function(n, t) { + var e, r, u; + if (n) { + if (t.P = n, t.N = n.N, n.N && (n.N.P = t), n.N = t, n.R) { + for (n = n.R; n.L;) n = n.L; + n.L = t + } else n.R = t; + e = n + } else this._ ? (n = uu(this._), t.P = null, t.N = n, n.P = n.L = t, e = n) : (t.P = t.N = null, this._ = t, e = null); + for (t.L = t.R = null, t.U = e, t.C = !0, n = t; e && e.C;) r = e.U, e === r.L ? (u = r.R, u && u.C ? (e.C = u.C = !1, r.C = !0, n = r) : (n === e.R && (eu(this, e), n = e, e = n.U), e.C = !1, r.C = !0, ru(this, r))) : (u = r.L, u && u.C ? (e.C = u.C = !1, r.C = !0, n = r) : (n === e.L && (ru(this, e), n = e, e = n.U), e.C = !1, r.C = !0, eu(this, r))), e = n.U; + this._.C = !1 + }, + remove: function(n) { + n.N && (n.N.P = n.P), n.P && (n.P.N = n.N), n.N = n.P = null; + var t, e, r, u = n.U, + i = n.L, + o = n.R; + if (e = i ? o ? uu(o) : i : o, u ? u.L === n ? u.L = e : u.R = e : this._ = e, i && o ? (r = e.C, e.C = n.C, e.L = i, i.U = e, e !== o ? (u = e.U, e.U = n.U, n = e.R, u.L = n, e.R = o, o.U = e) : (e.U = u, u = e, n = e.R)) : (r = n.C, n = e), n && (n.U = u), !r) { + if (n && n.C) return void(n.C = !1); + do { + if (n === this._) break; + if (n === u.L) { + if (t = u.R, t.C && (t.C = !1, u.C = !0, eu(this, u), t = u.R), t.L && t.L.C || t.R && t.R.C) { + t.R && t.R.C || (t.L.C = !1, t.C = !0, ru(this, t), t = u.R), t.C = u.C, u.C = t.R.C = !1, eu(this, u), n = this._; + break + } + } else if (t = u.L, t.C && (t.C = !1, u.C = !0, ru(this, u), t = u.L), t.L && t.L.C || t.R && t.R.C) { + t.L && t.L.C || (t.R.C = !1, t.C = !0, eu(this, t), t = u.L), t.C = u.C, u.C = t.L.C = !1, ru(this, u), n = this._; + break + } + t.C = !0, n = u, u = u.U + } while (!n.C); + n && (n.C = !1) + } + } + }, ta.geom.voronoi = function(n) { + function t(n) { + var t = new Array(n.length), + r = a[0][0], + u = a[0][1], + i = a[1][0], + o = a[1][1]; + return iu(e(n), a).cells.forEach(function(e, a) { + var c = e.edges, + l = e.site, + s = t[a] = c.length ? c.map(function(n) { + var t = n.start(); + return [t.x, t.y] + }) : l.x >= r && l.x <= i && l.y >= u && l.y <= o ? [ + [r, o], + [i, o], + [i, u], + [r, u] + ] : []; + s.point = n[a] + }), t + } + + function e(n) { + return n.map(function(n, t) { + return { + x: Math.round(i(n, t) / Ca) * Ca, + y: Math.round(o(n, t) / Ca) * Ca, + i: t + } + }) + } + var r = Ar, + u = Nr, + i = r, + o = u, + a = ul; + return n ? t(n) : (t.links = function(n) { + return iu(e(n)).edges.filter(function(n) { + return n.l && n.r + }).map(function(t) { + return { + source: n[t.l.i], + target: n[t.r.i] + } + }) + }, t.triangles = function(n) { + var t = []; + return iu(e(n)).cells.forEach(function(e, r) { + for (var u, i, o = e.site, a = e.edges.sort(Yr), c = -1, l = a.length, s = a[l - 1].edge, f = s.l === o ? s.r : s.l; ++c < l;) u = s, i = f, s = a[c].edge, f = s.l === o ? s.r : s.l, r < i.i && r < f.i && au(o, i, f) < 0 && t.push([n[r], n[i.i], n[f.i]]) + }), t + }, t.x = function(n) { + return arguments.length ? (i = Et(r = n), t) : r + }, t.y = function(n) { + return arguments.length ? (o = Et(u = n), t) : u + }, t.clipExtent = function(n) { + return arguments.length ? (a = null == n ? ul : n, t) : a === ul ? null : a + }, t.size = function(n) { + return arguments.length ? t.clipExtent(n && [ + [0, 0], n + ]) : a === ul ? null : a && a[1] + }, t) + }; + var ul = [ + [-1e6, -1e6], + [1e6, 1e6] + ]; + ta.geom.delaunay = function(n) { + return ta.geom.voronoi().triangles(n) + }, ta.geom.quadtree = function(n, t, e, r, u) { + function i(n) { + function i(n, t, e, r, u, i, o, a) { + if (!isNaN(e) && !isNaN(r)) + if (n.leaf) { + var c = n.x, + s = n.y; + if (null != c) + if (ga(c - e) + ga(s - r) < .01) l(n, t, e, r, u, i, o, a); + else { + var f = n.point; + n.x = n.y = n.point = null, l(n, f, c, s, u, i, o, a), l(n, t, e, r, u, i, o, a) + } + else n.x = e, n.y = r, n.point = t + } else l(n, t, e, r, u, i, o, a) + } + + function l(n, t, e, r, u, o, a, c) { + var l = .5 * (u + a), + s = .5 * (o + c), + f = e >= l, + h = r >= s, + g = h << 1 | f; + n.leaf = !1, n = n.nodes[g] || (n.nodes[g] = su()), f ? u = l : a = l, h ? o = s : c = s, i(n, t, e, r, u, o, a, c) + } + var s, f, h, g, p, v, d, m, y, M = Et(a), + x = Et(c); + if (null != t) v = t, d = e, m = r, y = u; + else if (m = y = -(v = d = 1 / 0), f = [], h = [], p = n.length, o) + for (g = 0; p > g; ++g) s = n[g], s.x < v && (v = s.x), s.y < d && (d = s.y), s.x > m && (m = s.x), s.y > y && (y = s.y), f.push(s.x), h.push(s.y); + else + for (g = 0; p > g; ++g) { + var b = +M(s = n[g], g), + _ = +x(s, g); + v > b && (v = b), d > _ && (d = _), b > m && (m = b), _ > y && (y = _), f.push(b), h.push(_) + } + var w = m - v, + S = y - d; + w > S ? y = d + w : m = v + S; + var k = su(); + if (k.add = function(n) { + i(k, n, +M(n, ++g), +x(n, g), v, d, m, y) + }, k.visit = function(n) { + fu(n, k, v, d, m, y) + }, k.find = function(n) { + return hu(k, n[0], n[1], v, d, m, y) + }, g = -1, null == t) { + for (; ++g < p;) i(k, n[g], f[g], h[g], v, d, m, y); + --g + } else n.forEach(k.add); + return f = h = n = s = null, k + } + var o, a = Ar, + c = Nr; + return (o = arguments.length) ? (a = cu, c = lu, 3 === o && (u = e, r = t, e = t = 0), i(n)) : (i.x = function(n) { + return arguments.length ? (a = n, i) : a + }, i.y = function(n) { + return arguments.length ? (c = n, i) : c + }, i.extent = function(n) { + return arguments.length ? (null == n ? t = e = r = u = null : (t = +n[0][0], e = +n[0][1], r = +n[1][0], u = +n[1][1]), i) : null == t ? null : [ + [t, e], + [r, u] + ] + }, i.size = function(n) { + return arguments.length ? (null == n ? t = e = r = u = null : (t = e = 0, r = +n[0], u = +n[1]), i) : null == t ? null : [r - t, u - e] + }, i) + }, ta.interpolateRgb = gu, ta.interpolateObject = pu, ta.interpolateNumber = vu, ta.interpolateString = du; + var il = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g, + ol = new RegExp(il.source, "g"); + ta.interpolate = mu, ta.interpolators = [function(n, t) { + var e = typeof t; + return ("string" === e ? Ga.has(t) || /^(#|rgb\(|hsl\()/.test(t) ? gu : du : t instanceof ot ? gu : Array.isArray(t) ? yu : "object" === e && isNaN(t) ? pu : vu)(n, t) + }], ta.interpolateArray = yu; + var al = function() { + return y + }, + cl = ta.map({ + linear: al, + poly: ku, + quad: function() { + return _u + }, + cubic: function() { + return wu + }, + sin: function() { + return Eu + }, + exp: function() { + return Au + }, + circle: function() { + return Nu + }, + elastic: Cu, + back: zu, + bounce: function() { + return qu + } + }), + ll = ta.map({ + "in": y, + out: xu, + "in-out": bu, + "out-in": function(n) { + return bu(xu(n)) + } + }); + ta.ease = function(n) { + var t = n.indexOf("-"), + e = t >= 0 ? n.slice(0, t) : n, + r = t >= 0 ? n.slice(t + 1) : "in"; + return e = cl.get(e) || al, r = ll.get(r) || y, Mu(r(e.apply(null, ea.call(arguments, 1)))) + }, ta.interpolateHcl = Lu, ta.interpolateHsl = Tu, ta.interpolateLab = Ru, ta.interpolateRound = Du, ta.transform = function(n) { + var t = ua.createElementNS(ta.ns.prefix.svg, "g"); + return (ta.transform = function(n) { + if (null != n) { + t.setAttribute("transform", n); + var e = t.transform.baseVal.consolidate() + } + return new Pu(e ? e.matrix : sl) + })(n) + }, Pu.prototype.toString = function() { + return "translate(" + this.translate + ")rotate(" + this.rotate + ")skewX(" + this.skew + ")scale(" + this.scale + ")" + }; + var sl = { + a: 1, + b: 0, + c: 0, + d: 1, + e: 0, + f: 0 + }; + ta.interpolateTransform = Hu, ta.layout = {}, ta.layout.bundle = function() { + return function(n) { + for (var t = [], e = -1, r = n.length; ++e < r;) t.push(Yu(n[e])); + return t + } + }, ta.layout.chord = function() { + function n() { + var n, l, f, h, g, p = {}, + v = [], + d = ta.range(i), + m = []; + for (e = [], r = [], n = 0, h = -1; ++h < i;) { + for (l = 0, g = -1; ++g < i;) l += u[h][g]; + v.push(l), m.push(ta.range(i)), n += l + } + for (o && d.sort(function(n, t) { + return o(v[n], v[t]) + }), a && m.forEach(function(n, t) { + n.sort(function(n, e) { + return a(u[t][n], u[t][e]) + }) + }), n = (La - s * i) / n, l = 0, h = -1; ++h < i;) { + for (f = l, g = -1; ++g < i;) { + var y = d[h], + M = m[y][g], + x = u[y][M], + b = l, + _ = l += x * n; + p[y + "-" + M] = { + index: y, + subindex: M, + startAngle: b, + endAngle: _, + value: x + } + } + r[y] = { + index: y, + startAngle: f, + endAngle: l, + value: (l - f) / n + }, l += s + } + for (h = -1; ++h < i;) + for (g = h - 1; ++g < i;) { + var w = p[h + "-" + g], + S = p[g + "-" + h]; + (w.value || S.value) && e.push(w.value < S.value ? { + source: S, + target: w + } : { + source: w, + target: S + }) + } + c && t() + } + + function t() { + e.sort(function(n, t) { + return c((n.source.value + n.target.value) / 2, (t.source.value + t.target.value) / 2) + }) + } + var e, r, u, i, o, a, c, l = {}, + s = 0; + return l.matrix = function(n) { + return arguments.length ? (i = (u = n) && u.length, e = r = null, l) : u + }, l.padding = function(n) { + return arguments.length ? (s = n, e = r = null, l) : s + }, l.sortGroups = function(n) { + return arguments.length ? (o = n, e = r = null, l) : o + }, l.sortSubgroups = function(n) { + return arguments.length ? (a = n, e = null, l) : a + }, l.sortChords = function(n) { + return arguments.length ? (c = n, e && t(), l) : c + }, l.chords = function() { + return e || n(), e + }, l.groups = function() { + return r || n(), r + }, l + }, ta.layout.force = function() { + function n(n) { + return function(t, e, r, u) { + if (t.point !== n) { + var i = t.cx - n.x, + o = t.cy - n.y, + a = u - e, + c = i * i + o * o; + if (c > a * a / d) { + if (p > c) { + var l = t.charge / c; + n.px -= i * l, n.py -= o * l + } + return !0 + } + if (t.point && c && p > c) { + var l = t.pointCharge / c; + n.px -= i * l, n.py -= o * l + } + } + return !t.charge + } + } + + function t(n) { + n.px = ta.event.x, n.py = ta.event.y, a.resume() + } + var e, r, u, i, o, a = {}, + c = ta.dispatch("start", "tick", "end"), + l = [1, 1], + s = .9, + f = fl, + h = hl, + g = -30, + p = gl, + v = .1, + d = .64, + m = [], + M = []; + return a.tick = function() { + if ((r *= .99) < .005) return c.end({ + type: "end", + alpha: r = 0 + }), !0; + var t, e, a, f, h, p, d, y, x, b = m.length, + _ = M.length; + for (e = 0; _ > e; ++e) a = M[e], f = a.source, h = a.target, y = h.x - f.x, x = h.y - f.y, (p = y * y + x * x) && (p = r * i[e] * ((p = Math.sqrt(p)) - u[e]) / p, y *= p, x *= p, h.x -= y * (d = f.weight / (h.weight + f.weight)), h.y -= x * d, f.x += y * (d = 1 - d), f.y += x * d); + if ((d = r * v) && (y = l[0] / 2, x = l[1] / 2, e = -1, d)) + for (; ++e < b;) a = m[e], a.x += (y - a.x) * d, a.y += (x - a.y) * d; + if (g) + for (Ju(t = ta.geom.quadtree(m), r, o), e = -1; ++e < b;)(a = m[e]).fixed || t.visit(n(a)); + for (e = -1; ++e < b;) a = m[e], a.fixed ? (a.x = a.px, a.y = a.py) : (a.x -= (a.px - (a.px = a.x)) * s, a.y -= (a.py - (a.py = a.y)) * s); + c.tick({ + type: "tick", + alpha: r + }) + }, a.nodes = function(n) { + return arguments.length ? (m = n, a) : m + }, a.links = function(n) { + return arguments.length ? (M = n, a) : M + }, a.size = function(n) { + return arguments.length ? (l = n, a) : l + }, a.linkDistance = function(n) { + return arguments.length ? (f = "function" == typeof n ? n : +n, a) : f + }, a.distance = a.linkDistance, a.linkStrength = function(n) { + return arguments.length ? (h = "function" == typeof n ? n : +n, a) : h + }, a.friction = function(n) { + return arguments.length ? (s = +n, a) : s + }, a.charge = function(n) { + return arguments.length ? (g = "function" == typeof n ? n : +n, a) : g + }, a.chargeDistance = function(n) { + return arguments.length ? (p = n * n, a) : Math.sqrt(p) + }, a.gravity = function(n) { + return arguments.length ? (v = +n, a) : v + }, a.theta = function(n) { + return arguments.length ? (d = n * n, a) : Math.sqrt(d) + }, a.alpha = function(n) { + return arguments.length ? (n = +n, r ? r = n > 0 ? n : 0 : n > 0 && (c.start({ + type: "start", + alpha: r = n + }), ta.timer(a.tick)), a) : r + }, a.start = function() { + function n(n, r) { + if (!e) { + for (e = new Array(c), a = 0; c > a; ++a) e[a] = []; + for (a = 0; s > a; ++a) { + var u = M[a]; + e[u.source.index].push(u.target), e[u.target.index].push(u.source) + } + } + for (var i, o = e[t], a = -1, l = o.length; ++a < l;) + if (!isNaN(i = o[a][n])) return i; + return Math.random() * r + } + var t, e, r, c = m.length, + s = M.length, + p = l[0], + v = l[1]; + for (t = 0; c > t; ++t)(r = m[t]).index = t, r.weight = 0; + for (t = 0; s > t; ++t) r = M[t], "number" == typeof r.source && (r.source = m[r.source]), "number" == typeof r.target && (r.target = m[r.target]), ++r.source.weight, ++r.target.weight; + for (t = 0; c > t; ++t) r = m[t], isNaN(r.x) && (r.x = n("x", p)), isNaN(r.y) && (r.y = n("y", v)), isNaN(r.px) && (r.px = r.x), isNaN(r.py) && (r.py = r.y); + if (u = [], "function" == typeof f) + for (t = 0; s > t; ++t) u[t] = +f.call(this, M[t], t); + else + for (t = 0; s > t; ++t) u[t] = f; + if (i = [], "function" == typeof h) + for (t = 0; s > t; ++t) i[t] = +h.call(this, M[t], t); + else + for (t = 0; s > t; ++t) i[t] = h; + if (o = [], "function" == typeof g) + for (t = 0; c > t; ++t) o[t] = +g.call(this, m[t], t); + else + for (t = 0; c > t; ++t) o[t] = g; + return a.resume() + }, a.resume = function() { + return a.alpha(.1) + }, a.stop = function() { + return a.alpha(0) + }, a.drag = function() { + return e || (e = ta.behavior.drag().origin(y).on("dragstart.force", Xu).on("drag.force", t).on("dragend.force", $u)), arguments.length ? void this.on("mouseover.force", Bu).on("mouseout.force", Wu).call(e) : e + }, ta.rebind(a, c, "on") + }; + var fl = 20, + hl = 1, + gl = 1 / 0; + ta.layout.hierarchy = function() { + function n(u) { + var i, o = [u], + a = []; + for (u.depth = 0; null != (i = o.pop());) + if (a.push(i), (l = e.call(n, i, i.depth)) && (c = l.length)) { + for (var c, l, s; --c >= 0;) o.push(s = l[c]), s.parent = i, s.depth = i.depth + 1; + r && (i.value = 0), i.children = l + } else r && (i.value = +r.call(n, i, i.depth) || 0), delete i.children; + return Qu(u, function(n) { + var e, u; + t && (e = n.children) && e.sort(t), r && (u = n.parent) && (u.value += n.value) + }), a + } + var t = ei, + e = ni, + r = ti; + return n.sort = function(e) { + return arguments.length ? (t = e, n) : t + }, n.children = function(t) { + return arguments.length ? (e = t, n) : e + }, n.value = function(t) { + return arguments.length ? (r = t, n) : r + }, n.revalue = function(t) { + return r && (Ku(t, function(n) { + n.children && (n.value = 0) + }), Qu(t, function(t) { + var e; + t.children || (t.value = +r.call(n, t, t.depth) || 0), (e = t.parent) && (e.value += t.value) + })), t + }, n + }, ta.layout.partition = function() { + function n(t, e, r, u) { + var i = t.children; + if (t.x = e, t.y = t.depth * u, t.dx = r, t.dy = u, i && (o = i.length)) { + var o, a, c, l = -1; + for (r = t.value ? r / t.value : 0; ++l < o;) n(a = i[l], e, c = a.value * r, u), e += c + } + } + + function t(n) { + var e = n.children, + r = 0; + if (e && (u = e.length)) + for (var u, i = -1; ++i < u;) r = Math.max(r, t(e[i])); + return 1 + r + } + + function e(e, i) { + var o = r.call(this, e, i); + return n(o[0], 0, u[0], u[1] / t(o[0])), o + } + var r = ta.layout.hierarchy(), + u = [1, 1]; + return e.size = function(n) { + return arguments.length ? (u = n, e) : u + }, Gu(e, r) + }, ta.layout.pie = function() { + function n(o) { + var a, c = o.length, + l = o.map(function(e, r) { + return +t.call(n, e, r) + }), + s = +("function" == typeof r ? r.apply(this, arguments) : r), + f = ("function" == typeof u ? u.apply(this, arguments) : u) - s, + h = Math.min(Math.abs(f) / c, +("function" == typeof i ? i.apply(this, arguments) : i)), + g = h * (0 > f ? -1 : 1), + p = (f - c * g) / ta.sum(l), + v = ta.range(c), + d = []; + return null != e && v.sort(e === pl ? function(n, t) { + return l[t] - l[n] + } : function(n, t) { + return e(o[n], o[t]) + }), v.forEach(function(n) { + d[n] = { + data: o[n], + value: a = l[n], + startAngle: s, + endAngle: s += a * p + g, + padAngle: h + } + }), d + } + var t = Number, + e = pl, + r = 0, + u = La, + i = 0; + return n.value = function(e) { + return arguments.length ? (t = e, n) : t + }, n.sort = function(t) { + return arguments.length ? (e = t, n) : e + }, n.startAngle = function(t) { + return arguments.length ? (r = t, n) : r + }, n.endAngle = function(t) { + return arguments.length ? (u = t, n) : u + }, n.padAngle = function(t) { + return arguments.length ? (i = t, n) : i + }, n + }; + var pl = {}; + ta.layout.stack = function() { + function n(a, c) { + if (!(h = a.length)) return a; + var l = a.map(function(e, r) { + return t.call(n, e, r) + }), + s = l.map(function(t) { + return t.map(function(t, e) { + return [i.call(n, t, e), o.call(n, t, e)] + }) + }), + f = e.call(n, s, c); + l = ta.permute(l, f), s = ta.permute(s, f); + var h, g, p, v, d = r.call(n, s, c), + m = l[0].length; + for (p = 0; m > p; ++p) + for (u.call(n, l[0][p], v = d[p], s[0][p][1]), g = 1; h > g; ++g) u.call(n, l[g][p], v += s[g - 1][p][1], s[g][p][1]); + return a + } + var t = y, + e = ai, + r = ci, + u = oi, + i = ui, + o = ii; + return n.values = function(e) { + return arguments.length ? (t = e, n) : t + }, n.order = function(t) { + return arguments.length ? (e = "function" == typeof t ? t : vl.get(t) || ai, n) : e + }, n.offset = function(t) { + return arguments.length ? (r = "function" == typeof t ? t : dl.get(t) || ci, n) : r + }, n.x = function(t) { + return arguments.length ? (i = t, n) : i + }, n.y = function(t) { + return arguments.length ? (o = t, n) : o + }, n.out = function(t) { + return arguments.length ? (u = t, n) : u + }, n + }; + var vl = ta.map({ + "inside-out": function(n) { + var t, e, r = n.length, + u = n.map(li), + i = n.map(si), + o = ta.range(r).sort(function(n, t) { + return u[n] - u[t] + }), + a = 0, + c = 0, + l = [], + s = []; + for (t = 0; r > t; ++t) e = o[t], c > a ? (a += i[e], l.push(e)) : (c += i[e], s.push(e)); + return s.reverse().concat(l) + }, + reverse: function(n) { + return ta.range(n.length).reverse() + }, + "default": ai + }), + dl = ta.map({ + silhouette: function(n) { + var t, e, r, u = n.length, + i = n[0].length, + o = [], + a = 0, + c = []; + for (e = 0; i > e; ++e) { + for (t = 0, r = 0; u > t; t++) r += n[t][e][1]; + r > a && (a = r), o.push(r) + } + for (e = 0; i > e; ++e) c[e] = (a - o[e]) / 2; + return c + }, + wiggle: function(n) { + var t, e, r, u, i, o, a, c, l, s = n.length, + f = n[0], + h = f.length, + g = []; + for (g[0] = c = l = 0, e = 1; h > e; ++e) { + for (t = 0, u = 0; s > t; ++t) u += n[t][e][1]; + for (t = 0, i = 0, a = f[e][0] - f[e - 1][0]; s > t; ++t) { + for (r = 0, o = (n[t][e][1] - n[t][e - 1][1]) / (2 * a); t > r; ++r) o += (n[r][e][1] - n[r][e - 1][1]) / a; + i += o * n[t][e][1] + } + g[e] = c -= u ? i / u * a : 0, l > c && (l = c) + } + for (e = 0; h > e; ++e) g[e] -= l; + return g + }, + expand: function(n) { + var t, e, r, u = n.length, + i = n[0].length, + o = 1 / u, + a = []; + for (e = 0; i > e; ++e) { + for (t = 0, r = 0; u > t; t++) r += n[t][e][1]; + if (r) + for (t = 0; u > t; t++) n[t][e][1] /= r; + else + for (t = 0; u > t; t++) n[t][e][1] = o + } + for (e = 0; i > e; ++e) a[e] = 0; + return a + }, + zero: ci + }); + ta.layout.histogram = function() { + function n(n, i) { + for (var o, a, c = [], l = n.map(e, this), s = r.call(this, l, i), f = u.call(this, s, l, i), i = -1, h = l.length, g = f.length - 1, p = t ? 1 : 1 / h; ++i < g;) o = c[i] = [], o.dx = f[i + 1] - (o.x = f[i]), o.y = 0; + if (g > 0) + for (i = -1; ++i < h;) a = l[i], a >= s[0] && a <= s[1] && (o = c[ta.bisect(f, a, 1, g) - 1], o.y += p, o.push(n[i])); + return c + } + var t = !0, + e = Number, + r = pi, + u = hi; + return n.value = function(t) { + return arguments.length ? (e = t, n) : e + }, n.range = function(t) { + return arguments.length ? (r = Et(t), n) : r + }, n.bins = function(t) { + return arguments.length ? (u = "number" == typeof t ? function(n) { + return gi(n, t) + } : Et(t), n) : u + }, n.frequency = function(e) { + return arguments.length ? (t = !!e, n) : t + }, n + }, ta.layout.pack = function() { + function n(n, i) { + var o = e.call(this, n, i), + a = o[0], + c = u[0], + l = u[1], + s = null == t ? Math.sqrt : "function" == typeof t ? t : function() { + return t + }; + if (a.x = a.y = 0, Qu(a, function(n) { + n.r = +s(n.value) + }), Qu(a, Mi), r) { + var f = r * (t ? 1 : Math.max(2 * a.r / c, 2 * a.r / l)) / 2; + Qu(a, function(n) { + n.r += f + }), Qu(a, Mi), Qu(a, function(n) { + n.r -= f + }) + } + return _i(a, c / 2, l / 2, t ? 1 : 1 / Math.max(2 * a.r / c, 2 * a.r / l)), o + } + var t, e = ta.layout.hierarchy().sort(vi), + r = 0, + u = [1, 1]; + return n.size = function(t) { + return arguments.length ? (u = t, n) : u + }, n.radius = function(e) { + return arguments.length ? (t = null == e || "function" == typeof e ? e : +e, n) : t + }, n.padding = function(t) { + return arguments.length ? (r = +t, n) : r + }, Gu(n, e) + }, ta.layout.tree = function() { + function n(n, u) { + var s = o.call(this, n, u), + f = s[0], + h = t(f); + if (Qu(h, e), h.parent.m = -h.z, Ku(h, r), l) Ku(f, i); + else { + var g = f, + p = f, + v = f; + Ku(f, function(n) { + n.x < g.x && (g = n), n.x > p.x && (p = n), n.depth > v.depth && (v = n) + }); + var d = a(g, p) / 2 - g.x, + m = c[0] / (p.x + a(p, g) / 2 + d), + y = c[1] / (v.depth || 1); + Ku(f, function(n) { + n.x = (n.x + d) * m, n.y = n.depth * y + }) + } + return s + } + + function t(n) { + for (var t, e = { + A: null, + children: [n] + }, r = [e]; null != (t = r.pop());) + for (var u, i = t.children, o = 0, a = i.length; a > o; ++o) r.push((i[o] = u = { + _: i[o], + parent: t, + children: (u = i[o].children) && u.slice() || [], + A: null, + a: null, + z: 0, + m: 0, + c: 0, + s: 0, + t: null, + i: o + }).a = u); + return e.children[0] + } + + function e(n) { + var t = n.children, + e = n.parent.children, + r = n.i ? e[n.i - 1] : null; + if (t.length) { + Ni(n); + var i = (t[0].z + t[t.length - 1].z) / 2; + r ? (n.z = r.z + a(n._, r._), n.m = n.z - i) : n.z = i + } else r && (n.z = r.z + a(n._, r._)); + n.parent.A = u(n, r, n.parent.A || e[0]) + } + + function r(n) { + n._.x = n.z + n.parent.m, n.m += n.parent.m + } + + function u(n, t, e) { + if (t) { + for (var r, u = n, i = n, o = t, c = u.parent.children[0], l = u.m, s = i.m, f = o.m, h = c.m; o = Ei(o), u = ki(u), o && u;) c = ki(c), i = Ei(i), i.a = n, r = o.z + f - u.z - l + a(o._, u._), r > 0 && (Ai(Ci(o, n, e), n, r), l += r, s += r), f += o.m, l += u.m, h += c.m, s += i.m; + o && !Ei(i) && (i.t = o, i.m += f - s), u && !ki(c) && (c.t = u, c.m += l - h, e = n) + } + return e + } + + function i(n) { + n.x *= c[0], n.y = n.depth * c[1] + } + var o = ta.layout.hierarchy().sort(null).value(null), + a = Si, + c = [1, 1], + l = null; + return n.separation = function(t) { + return arguments.length ? (a = t, n) : a + }, n.size = function(t) { + return arguments.length ? (l = null == (c = t) ? i : null, n) : l ? null : c + }, n.nodeSize = function(t) { + return arguments.length ? (l = null == (c = t) ? null : i, n) : l ? c : null + }, Gu(n, o) + }, ta.layout.cluster = function() { + function n(n, i) { + var o, a = t.call(this, n, i), + c = a[0], + l = 0; + Qu(c, function(n) { + var t = n.children; + t && t.length ? (n.x = qi(t), n.y = zi(t)) : (n.x = o ? l += e(n, o) : 0, n.y = 0, o = n) + }); + var s = Li(c), + f = Ti(c), + h = s.x - e(s, f) / 2, + g = f.x + e(f, s) / 2; + return Qu(c, u ? function(n) { + n.x = (n.x - c.x) * r[0], n.y = (c.y - n.y) * r[1] + } : function(n) { + n.x = (n.x - h) / (g - h) * r[0], n.y = (1 - (c.y ? n.y / c.y : 1)) * r[1] + }), a + } + var t = ta.layout.hierarchy().sort(null).value(null), + e = Si, + r = [1, 1], + u = !1; + return n.separation = function(t) { + return arguments.length ? (e = t, n) : e + }, n.size = function(t) { + return arguments.length ? (u = null == (r = t), n) : u ? null : r + }, n.nodeSize = function(t) { + return arguments.length ? (u = null != (r = t), n) : u ? r : null + }, Gu(n, t) + }, ta.layout.treemap = function() { + function n(n, t) { + for (var e, r, u = -1, i = n.length; ++u < i;) r = (e = n[u]).value * (0 > t ? 0 : t), e.area = isNaN(r) || 0 >= r ? 0 : r + } + + function t(e) { + var i = e.children; + if (i && i.length) { + var o, a, c, l = f(e), + s = [], + h = i.slice(), + p = 1 / 0, + v = "slice" === g ? l.dx : "dice" === g ? l.dy : "slice-dice" === g ? 1 & e.depth ? l.dy : l.dx : Math.min(l.dx, l.dy); + for (n(h, l.dx * l.dy / e.value), s.area = 0; + (c = h.length) > 0;) s.push(o = h[c - 1]), s.area += o.area, "squarify" !== g || (a = r(s, v)) <= p ? (h.pop(), p = a) : (s.area -= s.pop().area, u(s, v, l, !1), v = Math.min(l.dx, l.dy), s.length = s.area = 0, p = 1 / 0); + s.length && (u(s, v, l, !0), s.length = s.area = 0), i.forEach(t) + } + } + + function e(t) { + var r = t.children; + if (r && r.length) { + var i, o = f(t), + a = r.slice(), + c = []; + for (n(a, o.dx * o.dy / t.value), c.area = 0; i = a.pop();) c.push(i), c.area += i.area, null != i.z && (u(c, i.z ? o.dx : o.dy, o, !a.length), c.length = c.area = 0); + r.forEach(e) + } + } + + function r(n, t) { + for (var e, r = n.area, u = 0, i = 1 / 0, o = -1, a = n.length; ++o < a;)(e = n[o].area) && (i > e && (i = e), e > u && (u = e)); + return r *= r, t *= t, r ? Math.max(t * u * p / r, r / (t * i * p)) : 1 / 0 + } + + function u(n, t, e, r) { + var u, i = -1, + o = n.length, + a = e.x, + l = e.y, + s = t ? c(n.area / t) : 0; + if (t == e.dx) { + for ((r || s > e.dy) && (s = e.dy); ++i < o;) u = n[i], u.x = a, u.y = l, u.dy = s, a += u.dx = Math.min(e.x + e.dx - a, s ? c(u.area / s) : 0); + u.z = !0, u.dx += e.x + e.dx - a, e.y += s, e.dy -= s + } else { + for ((r || s > e.dx) && (s = e.dx); ++i < o;) u = n[i], u.x = a, u.y = l, u.dx = s, l += u.dy = Math.min(e.y + e.dy - l, s ? c(u.area / s) : 0); + u.z = !1, u.dy += e.y + e.dy - l, e.x += s, e.dx -= s + } + } + + function i(r) { + var u = o || a(r), + i = u[0]; + return i.x = 0, i.y = 0, i.dx = l[0], i.dy = l[1], o && a.revalue(i), n([i], i.dx * i.dy / i.value), (o ? e : t)(i), h && (o = u), u + } + var o, a = ta.layout.hierarchy(), + c = Math.round, + l = [1, 1], + s = null, + f = Ri, + h = !1, + g = "squarify", + p = .5 * (1 + Math.sqrt(5)); + return i.size = function(n) { + return arguments.length ? (l = n, i) : l + }, i.padding = function(n) { + function t(t) { + var e = n.call(i, t, t.depth); + return null == e ? Ri(t) : Di(t, "number" == typeof e ? [e, e, e, e] : e) + } + + function e(t) { + return Di(t, n) + } + if (!arguments.length) return s; + var r; + return f = null == (s = n) ? Ri : "function" == (r = typeof n) ? t : "number" === r ? (n = [n, n, n, n], e) : e, i + }, i.round = function(n) { + return arguments.length ? (c = n ? Math.round : Number, i) : c != Number + }, i.sticky = function(n) { + return arguments.length ? (h = n, o = null, i) : h + }, i.ratio = function(n) { + return arguments.length ? (p = n, i) : p + }, i.mode = function(n) { + return arguments.length ? (g = n + "", i) : g + }, Gu(i, a) + }, ta.random = { + normal: function(n, t) { + var e = arguments.length; + return 2 > e && (t = 1), 1 > e && (n = 0), + function() { + var e, r, u; + do e = 2 * Math.random() - 1, r = 2 * Math.random() - 1, u = e * e + r * r; while (!u || u > 1); + return n + t * e * Math.sqrt(-2 * Math.log(u) / u) + } + }, + logNormal: function() { + var n = ta.random.normal.apply(ta, arguments); + return function() { + return Math.exp(n()) + } + }, + bates: function(n) { + var t = ta.random.irwinHall(n); + return function() { + return t() / n + } + }, + irwinHall: function(n) { + return function() { + for (var t = 0, e = 0; n > e; e++) t += Math.random(); + return t + } + } + }, ta.scale = {}; + var ml = { + floor: y, + ceil: y + }; + ta.scale.linear = function() { + return Ii([0, 1], [0, 1], mu, !1) + }; + var yl = { + s: 1, + g: 1, + p: 1, + r: 1, + e: 1 + }; + ta.scale.log = function() { + return Ji(ta.scale.linear().domain([0, 1]), 10, !0, [1, 10]) + }; + var Ml = ta.format(".0e"), + xl = { + floor: function(n) { + return -Math.ceil(-n) + }, + ceil: function(n) { + return -Math.floor(-n) + } + }; + ta.scale.pow = function() { + return Gi(ta.scale.linear(), 1, [0, 1]) + }, ta.scale.sqrt = function() { + return ta.scale.pow().exponent(.5) + }, ta.scale.ordinal = function() { + return Qi([], { + t: "range", + a: [ + [] + ] + }) + }, ta.scale.category10 = function() { + return ta.scale.ordinal().range(bl) + }, ta.scale.category20 = function() { + return ta.scale.ordinal().range(_l) + }, ta.scale.category20b = function() { + return ta.scale.ordinal().range(wl) + }, ta.scale.category20c = function() { + return ta.scale.ordinal().range(Sl) + }; + var bl = [2062260, 16744206, 2924588, 14034728, 9725885, 9197131, 14907330, 8355711, 12369186, 1556175].map(Mt), + _l = [2062260, 11454440, 16744206, 16759672, 2924588, 10018698, 14034728, 16750742, 9725885, 12955861, 9197131, 12885140, 14907330, 16234194, 8355711, 13092807, 12369186, 14408589, 1556175, 10410725].map(Mt), + wl = [3750777, 5395619, 7040719, 10264286, 6519097, 9216594, 11915115, 13556636, 9202993, 12426809, 15186514, 15190932, 8666169, 11356490, 14049643, 15177372, 8077683, 10834324, 13528509, 14589654].map(Mt), + Sl = [3244733, 7057110, 10406625, 13032431, 15095053, 16616764, 16625259, 16634018, 3253076, 7652470, 10607003, 13101504, 7695281, 10394312, 12369372, 14342891, 6513507, 9868950, 12434877, 14277081].map(Mt); + ta.scale.quantile = function() { + return no([], []) + }, ta.scale.quantize = function() { + return to(0, 1, [0, 1]) + }, ta.scale.threshold = function() { + return eo([.5], [0, 1]) + }, ta.scale.identity = function() { + return ro([0, 1]) + }, ta.svg = {}, ta.svg.arc = function() { + function n() { + var n = Math.max(0, +e.apply(this, arguments)), + l = Math.max(0, +r.apply(this, arguments)), + s = o.apply(this, arguments) - Ra, + f = a.apply(this, arguments) - Ra, + h = Math.abs(f - s), + g = s > f ? 0 : 1; + if (n > l && (p = l, l = n, n = p), h >= Ta) return t(l, g) + (n ? t(n, 1 - g) : "") + "Z"; + var p, v, d, m, y, M, x, b, _, w, S, k, E = 0, + A = 0, + N = []; + if ((m = (+c.apply(this, arguments) || 0) / 2) && (d = i === kl ? Math.sqrt(n * n + l * l) : +i.apply(this, arguments), g || (A *= -1), l && (A = tt(d / l * Math.sin(m))), n && (E = tt(d / n * Math.sin(m)))), l) { + y = l * Math.cos(s + A), M = l * Math.sin(s + A), x = l * Math.cos(f - A), b = l * Math.sin(f - A); + var C = Math.abs(f - s - 2 * A) <= qa ? 0 : 1; + if (A && so(y, M, x, b) === g ^ C) { + var z = (s + f) / 2; + y = l * Math.cos(z), M = l * Math.sin(z), x = b = null + } + } else y = M = 0; + if (n) { + _ = n * Math.cos(f - E), w = n * Math.sin(f - E), S = n * Math.cos(s + E), k = n * Math.sin(s + E); + var q = Math.abs(s - f + 2 * E) <= qa ? 0 : 1; + if (E && so(_, w, S, k) === 1 - g ^ q) { + var L = (s + f) / 2; + _ = n * Math.cos(L), w = n * Math.sin(L), S = k = null + } + } else _ = w = 0; + if ((p = Math.min(Math.abs(l - n) / 2, +u.apply(this, arguments))) > .001) { + v = l > n ^ g ? 0 : 1; + var T = null == S ? [_, w] : null == x ? [y, M] : Lr([y, M], [S, k], [x, b], [_, w]), + R = y - T[0], + D = M - T[1], + P = x - T[0], + U = b - T[1], + j = 1 / Math.sin(Math.acos((R * P + D * U) / (Math.sqrt(R * R + D * D) * Math.sqrt(P * P + U * U))) / 2), + F = Math.sqrt(T[0] * T[0] + T[1] * T[1]); + if (null != x) { + var H = Math.min(p, (l - F) / (j + 1)), + O = fo(null == S ? [_, w] : [S, k], [y, M], l, H, g), + I = fo([x, b], [_, w], l, H, g); + p === H ? N.push("M", O[0], "A", H, ",", H, " 0 0,", v, " ", O[1], "A", l, ",", l, " 0 ", 1 - g ^ so(O[1][0], O[1][1], I[1][0], I[1][1]), ",", g, " ", I[1], "A", H, ",", H, " 0 0,", v, " ", I[0]) : N.push("M", O[0], "A", H, ",", H, " 0 1,", v, " ", I[0]) + } else N.push("M", y, ",", M); + if (null != S) { + var Y = Math.min(p, (n - F) / (j - 1)), + Z = fo([y, M], [S, k], n, -Y, g), + V = fo([_, w], null == x ? [y, M] : [x, b], n, -Y, g); + p === Y ? N.push("L", V[0], "A", Y, ",", Y, " 0 0,", v, " ", V[1], "A", n, ",", n, " 0 ", g ^ so(V[1][0], V[1][1], Z[1][0], Z[1][1]), ",", 1 - g, " ", Z[1], "A", Y, ",", Y, " 0 0,", v, " ", Z[0]) : N.push("L", V[0], "A", Y, ",", Y, " 0 0,", v, " ", Z[0]) + } else N.push("L", _, ",", w) + } else N.push("M", y, ",", M), null != x && N.push("A", l, ",", l, " 0 ", C, ",", g, " ", x, ",", b), N.push("L", _, ",", w), null != S && N.push("A", n, ",", n, " 0 ", q, ",", 1 - g, " ", S, ",", k); + return N.push("Z"), N.join("") + } + + function t(n, t) { + return "M0," + n + "A" + n + "," + n + " 0 1," + t + " 0," + -n + "A" + n + "," + n + " 0 1," + t + " 0," + n + } + var e = io, + r = oo, + u = uo, + i = kl, + o = ao, + a = co, + c = lo; + return n.innerRadius = function(t) { + return arguments.length ? (e = Et(t), n) : e + }, n.outerRadius = function(t) { + return arguments.length ? (r = Et(t), n) : r + }, n.cornerRadius = function(t) { + return arguments.length ? (u = Et(t), n) : u + }, n.padRadius = function(t) { + return arguments.length ? (i = t == kl ? kl : Et(t), n) : i + }, n.startAngle = function(t) { + return arguments.length ? (o = Et(t), n) : o + }, n.endAngle = function(t) { + return arguments.length ? (a = Et(t), n) : a + }, n.padAngle = function(t) { + return arguments.length ? (c = Et(t), n) : c + }, n.centroid = function() { + var n = (+e.apply(this, arguments) + +r.apply(this, arguments)) / 2, + t = (+o.apply(this, arguments) + +a.apply(this, arguments)) / 2 - Ra; + return [Math.cos(t) * n, Math.sin(t) * n] + }, n + }; + var kl = "auto"; + ta.svg.line = function() { + return ho(y) + }; + var El = ta.map({ + linear: go, + "linear-closed": po, + step: vo, + "step-before": mo, + "step-after": yo, + basis: So, + "basis-open": ko, + "basis-closed": Eo, + bundle: Ao, + cardinal: bo, + "cardinal-open": Mo, + "cardinal-closed": xo, + monotone: To + }); + El.forEach(function(n, t) { + t.key = n, t.closed = /-closed$/.test(n) + }); + var Al = [0, 2 / 3, 1 / 3, 0], + Nl = [0, 1 / 3, 2 / 3, 0], + Cl = [0, 1 / 6, 2 / 3, 1 / 6]; + ta.svg.line.radial = function() { + var n = ho(Ro); + return n.radius = n.x, delete n.x, n.angle = n.y, delete n.y, n + }, mo.reverse = yo, yo.reverse = mo, ta.svg.area = function() { + return Do(y) + }, ta.svg.area.radial = function() { + var n = Do(Ro); + return n.radius = n.x, delete n.x, n.innerRadius = n.x0, delete n.x0, n.outerRadius = n.x1, delete n.x1, n.angle = n.y, delete n.y, n.startAngle = n.y0, delete n.y0, n.endAngle = n.y1, delete n.y1, n + }, ta.svg.chord = function() { + function n(n, a) { + var c = t(this, i, n, a), + l = t(this, o, n, a); + return "M" + c.p0 + r(c.r, c.p1, c.a1 - c.a0) + (e(c, l) ? u(c.r, c.p1, c.r, c.p0) : u(c.r, c.p1, l.r, l.p0) + r(l.r, l.p1, l.a1 - l.a0) + u(l.r, l.p1, c.r, c.p0)) + "Z" + } + + function t(n, t, e, r) { + var u = t.call(n, e, r), + i = a.call(n, u, r), + o = c.call(n, u, r) - Ra, + s = l.call(n, u, r) - Ra; + return { + r: i, + a0: o, + a1: s, + p0: [i * Math.cos(o), i * Math.sin(o)], + p1: [i * Math.cos(s), i * Math.sin(s)] + } + } + + function e(n, t) { + return n.a0 == t.a0 && n.a1 == t.a1 + } + + function r(n, t, e) { + return "A" + n + "," + n + " 0 " + +(e > qa) + ",1 " + t + } + + function u(n, t, e, r) { + return "Q 0,0 " + r + } + var i = mr, + o = yr, + a = Po, + c = ao, + l = co; + return n.radius = function(t) { + return arguments.length ? (a = Et(t), n) : a + }, n.source = function(t) { + return arguments.length ? (i = Et(t), n) : i + }, n.target = function(t) { + return arguments.length ? (o = Et(t), n) : o + }, n.startAngle = function(t) { + return arguments.length ? (c = Et(t), n) : c + }, n.endAngle = function(t) { + return arguments.length ? (l = Et(t), n) : l + }, n + }, ta.svg.diagonal = function() { + function n(n, u) { + var i = t.call(this, n, u), + o = e.call(this, n, u), + a = (i.y + o.y) / 2, + c = [i, { + x: i.x, + y: a + }, { + x: o.x, + y: a + }, o]; + return c = c.map(r), "M" + c[0] + "C" + c[1] + " " + c[2] + " " + c[3] + } + var t = mr, + e = yr, + r = Uo; + return n.source = function(e) { + return arguments.length ? (t = Et(e), n) : t + }, n.target = function(t) { + return arguments.length ? (e = Et(t), n) : e + }, n.projection = function(t) { + return arguments.length ? (r = t, n) : r + }, n + }, ta.svg.diagonal.radial = function() { + var n = ta.svg.diagonal(), + t = Uo, + e = n.projection; + return n.projection = function(n) { + return arguments.length ? e(jo(t = n)) : t + }, n + }, ta.svg.symbol = function() { + function n(n, r) { + return (zl.get(t.call(this, n, r)) || Oo)(e.call(this, n, r)) + } + var t = Ho, + e = Fo; + return n.type = function(e) { + return arguments.length ? (t = Et(e), n) : t + }, n.size = function(t) { + return arguments.length ? (e = Et(t), n) : e + }, n + }; + var zl = ta.map({ + circle: Oo, + cross: function(n) { + var t = Math.sqrt(n / 5) / 2; + return "M" + -3 * t + "," + -t + "H" + -t + "V" + -3 * t + "H" + t + "V" + -t + "H" + 3 * t + "V" + t + "H" + t + "V" + 3 * t + "H" + -t + "V" + t + "H" + -3 * t + "Z" + }, + diamond: function(n) { + var t = Math.sqrt(n / (2 * Ll)), + e = t * Ll; + return "M0," + -t + "L" + e + ",0 0," + t + " " + -e + ",0Z" + }, + square: function(n) { + var t = Math.sqrt(n) / 2; + return "M" + -t + "," + -t + "L" + t + "," + -t + " " + t + "," + t + " " + -t + "," + t + "Z" + }, + "triangle-down": function(n) { + var t = Math.sqrt(n / ql), + e = t * ql / 2; + return "M0," + e + "L" + t + "," + -e + " " + -t + "," + -e + "Z" + }, + "triangle-up": function(n) { + var t = Math.sqrt(n / ql), + e = t * ql / 2; + return "M0," + -e + "L" + t + "," + e + " " + -t + "," + e + "Z" + } + }); + ta.svg.symbolTypes = zl.keys(); + var ql = Math.sqrt(3), + Ll = Math.tan(30 * Da); + _a.transition = function(n) { + for (var t, e, r = Tl || ++Ul, u = Xo(n), i = [], o = Rl || { + time: Date.now(), + ease: Su, + delay: 0, + duration: 250 + }, a = -1, c = this.length; ++a < c;) { + i.push(t = []); + for (var l = this[a], s = -1, f = l.length; ++s < f;)(e = l[s]) && $o(e, s, u, r, o), t.push(e) + } + return Yo(i, u, r) + }, _a.interrupt = function(n) { + return this.each(null == n ? Dl : Io(Xo(n))) + }; + var Tl, Rl, Dl = Io(Xo()), + Pl = [], + Ul = 0; + Pl.call = _a.call, Pl.empty = _a.empty, Pl.node = _a.node, Pl.size = _a.size, ta.transition = function(n, t) { + return n && n.transition ? Tl ? n.transition(t) : n : ta.selection().transition(n) + }, ta.transition.prototype = Pl, Pl.select = function(n) { + var t, e, r, u = this.id, + i = this.namespace, + o = []; + n = N(n); + for (var a = -1, c = this.length; ++a < c;) { + o.push(t = []); + for (var l = this[a], s = -1, f = l.length; ++s < f;)(r = l[s]) && (e = n.call(r, r.__data__, s, a)) ? ("__data__" in r && (e.__data__ = r.__data__), $o(e, s, i, u, r[i][u]), t.push(e)) : t.push(null) + } + return Yo(o, i, u) + }, Pl.selectAll = function(n) { + var t, e, r, u, i, o = this.id, + a = this.namespace, + c = []; + n = C(n); + for (var l = -1, s = this.length; ++l < s;) + for (var f = this[l], h = -1, g = f.length; ++h < g;) + if (r = f[h]) { + i = r[a][o], e = n.call(r, r.__data__, h, l), c.push(t = []); + for (var p = -1, v = e.length; ++p < v;)(u = e[p]) && $o(u, p, a, o, i), t.push(u) + } return Yo(c, a, o) + }, Pl.filter = function(n) { + var t, e, r, u = []; + "function" != typeof n && (n = O(n)); + for (var i = 0, o = this.length; o > i; i++) { + u.push(t = []); + for (var e = this[i], a = 0, c = e.length; c > a; a++)(r = e[a]) && n.call(r, r.__data__, a, i) && t.push(r) + } + return Yo(u, this.namespace, this.id) + }, Pl.tween = function(n, t) { + var e = this.id, + r = this.namespace; + return arguments.length < 2 ? this.node()[r][e].tween.get(n) : Y(this, null == t ? function(t) { + t[r][e].tween.remove(n) + } : function(u) { + u[r][e].tween.set(n, t) + }) + }, Pl.attr = function(n, t) { + function e() { + this.removeAttribute(a) + } + + function r() { + this.removeAttributeNS(a.space, a.local) + } + + function u(n) { + return null == n ? e : (n += "", function() { + var t, e = this.getAttribute(a); + return e !== n && (t = o(e, n), function(n) { + this.setAttribute(a, t(n)) + }) + }) + } + + function i(n) { + return null == n ? r : (n += "", function() { + var t, e = this.getAttributeNS(a.space, a.local); + return e !== n && (t = o(e, n), function(n) { + this.setAttributeNS(a.space, a.local, t(n)) + }) + }) + } + if (arguments.length < 2) { + for (t in n) this.attr(t, n[t]); + return this + } + var o = "transform" == n ? Hu : mu, + a = ta.ns.qualify(n); + return Zo(this, "attr." + n, t, a.local ? i : u) + }, Pl.attrTween = function(n, t) { + function e(n, e) { + var r = t.call(this, n, e, this.getAttribute(u)); + return r && function(n) { + this.setAttribute(u, r(n)) + } + } + + function r(n, e) { + var r = t.call(this, n, e, this.getAttributeNS(u.space, u.local)); + return r && function(n) { + this.setAttributeNS(u.space, u.local, r(n)) + } + } + var u = ta.ns.qualify(n); + return this.tween("attr." + n, u.local ? r : e) + }, Pl.style = function(n, e, r) { + function u() { + this.style.removeProperty(n) + } + + function i(e) { + return null == e ? u : (e += "", function() { + var u, i = t(this).getComputedStyle(this, null).getPropertyValue(n); + return i !== e && (u = mu(i, e), function(t) { + this.style.setProperty(n, u(t), r) + }) + }) + } + var o = arguments.length; + if (3 > o) { + if ("string" != typeof n) { + 2 > o && (e = ""); + for (r in n) this.style(r, n[r], e); + return this + } + r = "" + } + return Zo(this, "style." + n, e, i) + }, Pl.styleTween = function(n, e, r) { + function u(u, i) { + var o = e.call(this, u, i, t(this).getComputedStyle(this, null).getPropertyValue(n)); + return o && function(t) { + this.style.setProperty(n, o(t), r) + } + } + return arguments.length < 3 && (r = ""), this.tween("style." + n, u) + }, Pl.text = function(n) { + return Zo(this, "text", n, Vo) + }, Pl.remove = function() { + var n = this.namespace; + return this.each("end.transition", function() { + var t; + this[n].count < 2 && (t = this.parentNode) && t.removeChild(this) + }) + }, Pl.ease = function(n) { + var t = this.id, + e = this.namespace; + return arguments.length < 1 ? this.node()[e][t].ease : ("function" != typeof n && (n = ta.ease.apply(ta, arguments)), Y(this, function(r) { + r[e][t].ease = n + })) + }, Pl.delay = function(n) { + var t = this.id, + e = this.namespace; + return arguments.length < 1 ? this.node()[e][t].delay : Y(this, "function" == typeof n ? function(r, u, i) { + r[e][t].delay = +n.call(r, r.__data__, u, i) + } : (n = +n, function(r) { + r[e][t].delay = n + })) + }, Pl.duration = function(n) { + var t = this.id, + e = this.namespace; + return arguments.length < 1 ? this.node()[e][t].duration : Y(this, "function" == typeof n ? function(r, u, i) { + r[e][t].duration = Math.max(1, n.call(r, r.__data__, u, i)) + } : (n = Math.max(1, n), function(r) { + r[e][t].duration = n + })) + }, Pl.each = function(n, t) { + var e = this.id, + r = this.namespace; + if (arguments.length < 2) { + var u = Rl, + i = Tl; + try { + Tl = e, Y(this, function(t, u, i) { + Rl = t[r][e], n.call(t, t.__data__, u, i) + }) + } finally { + Rl = u, Tl = i + } + } else Y(this, function(u) { + var i = u[r][e]; + (i.event || (i.event = ta.dispatch("start", "end", "interrupt"))).on(n, t) + }); + return this + }, Pl.transition = function() { + for (var n, t, e, r, u = this.id, i = ++Ul, o = this.namespace, a = [], c = 0, l = this.length; l > c; c++) { + a.push(n = []); + for (var t = this[c], s = 0, f = t.length; f > s; s++)(e = t[s]) && (r = e[o][u], $o(e, s, o, i, { + time: r.time, + ease: r.ease, + delay: r.delay + r.duration, + duration: r.duration + })), n.push(e) + } + return Yo(a, o, i) + }, ta.svg.axis = function() { + function n(n) { + n.each(function() { + var n, l = ta.select(this), + s = this.__chart__ || e, + f = this.__chart__ = e.copy(), + h = null == c ? f.ticks ? f.ticks.apply(f, a) : f.domain() : c, + g = null == t ? f.tickFormat ? f.tickFormat.apply(f, a) : y : t, + p = l.selectAll(".tick").data(h, f), + v = p.enter().insert("g", ".domain").attr("class", "tick").style("opacity", Ca), + d = ta.transition(p.exit()).style("opacity", Ca).remove(), + m = ta.transition(p.order()).style("opacity", 1), + M = Math.max(u, 0) + o, + x = Ui(f), + b = l.selectAll(".domain").data([0]), + _ = (b.enter().append("path").attr("class", "domain"), ta.transition(b)); + v.append("line"), v.append("text"); + var w, S, k, E, A = v.select("line"), + N = m.select("line"), + C = p.select("text").text(g), + z = v.select("text"), + q = m.select("text"), + L = "top" === r || "left" === r ? -1 : 1; + if ("bottom" === r || "top" === r ? (n = Bo, w = "x", k = "y", S = "x2", E = "y2", C.attr("dy", 0 > L ? "0em" : ".71em").style("text-anchor", "middle"), _.attr("d", "M" + x[0] + "," + L * i + "V0H" + x[1] + "V" + L * i)) : (n = Wo, w = "y", k = "x", S = "y2", E = "x2", C.attr("dy", ".32em").style("text-anchor", 0 > L ? "end" : "start"), _.attr("d", "M" + L * i + "," + x[0] + "H0V" + x[1] + "H" + L * i)), A.attr(E, L * u), z.attr(k, L * M), N.attr(S, 0).attr(E, L * u), q.attr(w, 0).attr(k, L * M), f.rangeBand) { + var T = f, + R = T.rangeBand() / 2; + s = f = function(n) { + return T(n) + R + } + } else s.rangeBand ? s = f : d.call(n, f, s); + v.call(n, s, f), m.call(n, f, f) + }) + } + var t, e = ta.scale.linear(), + r = jl, + u = 6, + i = 6, + o = 3, + a = [10], + c = null; + return n.scale = function(t) { + return arguments.length ? (e = t, n) : e + }, n.orient = function(t) { + return arguments.length ? (r = t in Fl ? t + "" : jl, n) : r + }, n.ticks = function() { + return arguments.length ? (a = arguments, n) : a + }, n.tickValues = function(t) { + return arguments.length ? (c = t, n) : c + }, n.tickFormat = function(e) { + return arguments.length ? (t = e, n) : t + }, n.tickSize = function(t) { + var e = arguments.length; + return e ? (u = +t, i = +arguments[e - 1], n) : u + }, n.innerTickSize = function(t) { + return arguments.length ? (u = +t, n) : u + }, n.outerTickSize = function(t) { + return arguments.length ? (i = +t, n) : i + }, n.tickPadding = function(t) { + return arguments.length ? (o = +t, n) : o + }, n.tickSubdivide = function() { + return arguments.length && n + }, n + }; + var jl = "bottom", + Fl = { + top: 1, + right: 1, + bottom: 1, + left: 1 + }; + ta.svg.brush = function() { + function n(t) { + t.each(function() { + var t = ta.select(this).style("pointer-events", "all").style("-webkit-tap-highlight-color", "rgba(0,0,0,0)").on("mousedown.brush", i).on("touchstart.brush", i), + o = t.selectAll(".background").data([0]); + o.enter().append("rect").attr("class", "background").style("visibility", "hidden").style("cursor", "crosshair"), t.selectAll(".extent").data([0]).enter().append("rect").attr("class", "extent").style("cursor", "move"); + var a = t.selectAll(".resize").data(v, y); + a.exit().remove(), a.enter().append("g").attr("class", function(n) { + return "resize " + n + }).style("cursor", function(n) { + return Hl[n] + }).append("rect").attr("x", function(n) { + return /[ew]$/.test(n) ? -3 : null + }).attr("y", function(n) { + return /^[ns]/.test(n) ? -3 : null + }).attr("width", 6).attr("height", 6).style("visibility", "hidden"), a.style("display", n.empty() ? "none" : null); + var c, f = ta.transition(t), + h = ta.transition(o); + l && (c = Ui(l), h.attr("x", c[0]).attr("width", c[1] - c[0]), r(f)), s && (c = Ui(s), h.attr("y", c[0]).attr("height", c[1] - c[0]), u(f)), e(f) + }) + } + + function e(n) { + n.selectAll(".resize").attr("transform", function(n) { + return "translate(" + f[+/e$/.test(n)] + "," + h[+/^s/.test(n)] + ")" + }) + } + + function r(n) { + n.select(".extent").attr("x", f[0]), n.selectAll(".extent,.n>rect,.s>rect").attr("width", f[1] - f[0]) + } + + function u(n) { + n.select(".extent").attr("y", h[0]), n.selectAll(".extent,.e>rect,.w>rect").attr("height", h[1] - h[0]) + } + + function i() { + function i() { + 32 == ta.event.keyCode && (C || (M = null, q[0] -= f[1], q[1] -= h[1], C = 2), S()) + } + + function v() { + 32 == ta.event.keyCode && 2 == C && (q[0] += f[1], q[1] += h[1], C = 0, S()) + } + + function d() { + var n = ta.mouse(b), + t = !1; + x && (n[0] += x[0], n[1] += x[1]), C || (ta.event.altKey ? (M || (M = [(f[0] + f[1]) / 2, (h[0] + h[1]) / 2]), q[0] = f[+(n[0] < M[0])], q[1] = h[+(n[1] < M[1])]) : M = null), A && m(n, l, 0) && (r(k), t = !0), N && m(n, s, 1) && (u(k), t = !0), t && (e(k), w({ + type: "brush", + mode: C ? "move" : "resize" + })) + } + + function m(n, t, e) { + var r, u, i = Ui(t), + c = i[0], + l = i[1], + s = q[e], + v = e ? h : f, + d = v[1] - v[0]; + return C && (c -= s, l -= d + s), r = (e ? p : g) ? Math.max(c, Math.min(l, n[e])) : n[e], C ? u = (r += s) + d : (M && (s = Math.max(c, Math.min(l, 2 * M[e] - r))), r > s ? (u = r, r = s) : u = s), v[0] != r || v[1] != u ? (e ? a = null : o = null, v[0] = r, v[1] = u, !0) : void 0 + } + + function y() { + d(), k.style("pointer-events", "all").selectAll(".resize").style("display", n.empty() ? "none" : null), ta.select("body").style("cursor", null), L.on("mousemove.brush", null).on("mouseup.brush", null).on("touchmove.brush", null).on("touchend.brush", null).on("keydown.brush", null).on("keyup.brush", null), z(), w({ + type: "brushend" + }) + } + var M, x, b = this, + _ = ta.select(ta.event.target), + w = c.of(b, arguments), + k = ta.select(b), + E = _.datum(), + A = !/^(n|s)$/.test(E) && l, + N = !/^(e|w)$/.test(E) && s, + C = _.classed("extent"), + z = W(b), + q = ta.mouse(b), + L = ta.select(t(b)).on("keydown.brush", i).on("keyup.brush", v); + if (ta.event.changedTouches ? L.on("touchmove.brush", d).on("touchend.brush", y) : L.on("mousemove.brush", d).on("mouseup.brush", y), k.interrupt().selectAll("*").interrupt(), C) q[0] = f[0] - q[0], q[1] = h[0] - q[1]; + else if (E) { + var T = +/w$/.test(E), + R = +/^n/.test(E); + x = [f[1 - T] - q[0], h[1 - R] - q[1]], q[0] = f[T], q[1] = h[R] + } else ta.event.altKey && (M = q.slice()); + k.style("pointer-events", "none").selectAll(".resize").style("display", null), ta.select("body").style("cursor", _.style("cursor")), w({ + type: "brushstart" + }), d() + } + var o, a, c = E(n, "brushstart", "brush", "brushend"), + l = null, + s = null, + f = [0, 0], + h = [0, 0], + g = !0, + p = !0, + v = Ol[0]; + return n.event = function(n) { + n.each(function() { + var n = c.of(this, arguments), + t = { + x: f, + y: h, + i: o, + j: a + }, + e = this.__chart__ || t; + this.__chart__ = t, Tl ? ta.select(this).transition().each("start.brush", function() { + o = e.i, a = e.j, f = e.x, h = e.y, n({ + type: "brushstart" + }) + }).tween("brush:brush", function() { + var e = yu(f, t.x), + r = yu(h, t.y); + return o = a = null, + function(u) { + f = t.x = e(u), h = t.y = r(u), n({ + type: "brush", + mode: "resize" + }) + } + }).each("end.brush", function() { + o = t.i, a = t.j, n({ + type: "brush", + mode: "resize" + }), n({ + type: "brushend" + }) + }) : (n({ + type: "brushstart" + }), n({ + type: "brush", + mode: "resize" + }), n({ + type: "brushend" + })) + }) + }, n.x = function(t) { + return arguments.length ? (l = t, v = Ol[!l << 1 | !s], n) : l + }, n.y = function(t) { + return arguments.length ? (s = t, v = Ol[!l << 1 | !s], n) : s + }, n.clamp = function(t) { + return arguments.length ? (l && s ? (g = !!t[0], p = !!t[1]) : l ? g = !!t : s && (p = !!t), n) : l && s ? [g, p] : l ? g : s ? p : null + }, n.extent = function(t) { + var e, r, u, i, c; + return arguments.length ? (l && (e = t[0], r = t[1], s && (e = e[0], r = r[0]), o = [e, r], l.invert && (e = l(e), r = l(r)), e > r && (c = e, e = r, r = c), (e != f[0] || r != f[1]) && (f = [e, r])), s && (u = t[0], i = t[1], l && (u = u[1], i = i[1]), a = [u, i], s.invert && (u = s(u), i = s(i)), u > i && (c = u, u = i, i = c), (u != h[0] || i != h[1]) && (h = [u, i])), n) : (l && (o ? (e = o[0], r = o[1]) : (e = f[0], r = f[1], l.invert && (e = l.invert(e), r = l.invert(r)), e > r && (c = e, e = r, r = c))), s && (a ? (u = a[0], i = a[1]) : (u = h[0], i = h[1], s.invert && (u = s.invert(u), i = s.invert(i)), u > i && (c = u, u = i, i = c))), l && s ? [ + [e, u], + [r, i] + ] : l ? [e, r] : s && [u, i]) + }, n.clear = function() { + return n.empty() || (f = [0, 0], h = [0, 0], o = a = null), n + }, n.empty = function() { + return !!l && f[0] == f[1] || !!s && h[0] == h[1] + }, ta.rebind(n, c, "on") + }; + var Hl = { + n: "ns-resize", + e: "ew-resize", + s: "ns-resize", + w: "ew-resize", + nw: "nwse-resize", + ne: "nesw-resize", + se: "nwse-resize", + sw: "nesw-resize" + }, + Ol = [ + ["n", "e", "s", "w", "nw", "ne", "se", "sw"], + ["e", "w"], + ["n", "s"], + [] + ], + Il = ac.format = gc.timeFormat, + Yl = Il.utc, + Zl = Yl("%Y-%m-%dT%H:%M:%S.%LZ"); + Il.iso = Date.prototype.toISOString && +new Date("2000-01-01T00:00:00.000Z") ? Jo : Zl, Jo.parse = function(n) { + var t = new Date(n); + return isNaN(t) ? null : t + }, Jo.toString = Zl.toString, ac.second = Ft(function(n) { + return new cc(1e3 * Math.floor(n / 1e3)) + }, function(n, t) { + n.setTime(n.getTime() + 1e3 * Math.floor(t)) + }, function(n) { + return n.getSeconds() + }), ac.seconds = ac.second.range, ac.seconds.utc = ac.second.utc.range, ac.minute = Ft(function(n) { + return new cc(6e4 * Math.floor(n / 6e4)) + }, function(n, t) { + n.setTime(n.getTime() + 6e4 * Math.floor(t)) + }, function(n) { + return n.getMinutes() + }), ac.minutes = ac.minute.range, ac.minutes.utc = ac.minute.utc.range, ac.hour = Ft(function(n) { + var t = n.getTimezoneOffset() / 60; + return new cc(36e5 * (Math.floor(n / 36e5 - t) + t)) + }, function(n, t) { + n.setTime(n.getTime() + 36e5 * Math.floor(t)) + }, function(n) { + return n.getHours() + }), ac.hours = ac.hour.range, ac.hours.utc = ac.hour.utc.range, ac.month = Ft(function(n) { + return n = ac.day(n), n.setDate(1), n + }, function(n, t) { + n.setMonth(n.getMonth() + t) + }, function(n) { + return n.getMonth() + }), ac.months = ac.month.range, ac.months.utc = ac.month.utc.range; + var Vl = [1e3, 5e3, 15e3, 3e4, 6e4, 3e5, 9e5, 18e5, 36e5, 108e5, 216e5, 432e5, 864e5, 1728e5, 6048e5, 2592e6, 7776e6, 31536e6], + Xl = [ + [ac.second, 1], + [ac.second, 5], + [ac.second, 15], + [ac.second, 30], + [ac.minute, 1], + [ac.minute, 5], + [ac.minute, 15], + [ac.minute, 30], + [ac.hour, 1], + [ac.hour, 3], + [ac.hour, 6], + [ac.hour, 12], + [ac.day, 1], + [ac.day, 2], + [ac.week, 1], + [ac.month, 1], + [ac.month, 3], + [ac.year, 1] + ], + $l = Il.multi([ + [".%L", function(n) { + return n.getMilliseconds() + }], + [":%S", function(n) { + return n.getSeconds() + }], + ["%I:%M", function(n) { + return n.getMinutes() + }], + ["%I %p", function(n) { + return n.getHours() + }], + ["%a %d", function(n) { + return n.getDay() && 1 != n.getDate() + }], + ["%b %d", function(n) { + return 1 != n.getDate() + }], + ["%B", function(n) { + return n.getMonth() + }], + ["%Y", Ne] + ]), + Bl = { + range: function(n, t, e) { + return ta.range(Math.ceil(n / e) * e, +t, e).map(Ko) + }, + floor: y, + ceil: y + }; + Xl.year = ac.year, ac.scale = function() { + return Go(ta.scale.linear(), Xl, $l) + }; + var Wl = Xl.map(function(n) { + return [n[0].utc, n[1]] + }), + Jl = Yl.multi([ + [".%L", function(n) { + return n.getUTCMilliseconds() + }], + [":%S", function(n) { + return n.getUTCSeconds() + }], + ["%I:%M", function(n) { + return n.getUTCMinutes() + }], + ["%I %p", function(n) { + return n.getUTCHours() + }], + ["%a %d", function(n) { + return n.getUTCDay() && 1 != n.getUTCDate() + }], + ["%b %d", function(n) { + return 1 != n.getUTCDate() + }], + ["%B", function(n) { + return n.getUTCMonth() + }], + ["%Y", Ne] + ]); + Wl.year = ac.year.utc, ac.scale.utc = function() { + return Go(ta.scale.linear(), Wl, Jl) + }, ta.text = At(function(n) { + return n.responseText + }), ta.json = function(n, t) { + return Nt(n, "application/json", Qo, t) + }, ta.html = function(n, t) { + return Nt(n, "text/html", na, t) + }, ta.xml = At(function(n) { + return n.responseXML + }), "function" == typeof define && define.amd ? define(ta) : "object" == typeof module && module.exports && (module.exports = ta), this.d3 = ta +}(); \ No newline at end of file diff --git a/odoo_website_helpdesk_dashboard/static/src/xml/dashboard_view.xml b/odoo_website_helpdesk_dashboard/static/src/xml/dashboard_view.xml new file mode 100644 index 000000000..2cd42d9e5 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/static/src/xml/dashboard_view.xml @@ -0,0 +1,224 @@ + + + +
+
+
+ + + +
+

HelpDesk Dashboard

+
+
+
+
+
+ +
+
+
New Tickets
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+ +
+
+
Tickets In Progress
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+ +
+
+
Done Tickets
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
+ +
+
+
HelpDesk Teams
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+ CUSTOMER SATISFACTION: +
+ 😃 + Response Received: +
+
+
+
+
+
+
+

Ticket Priority

+
+
+
+
+ Very low : +
+
+
+
+
+
+
+
+
+
+ Low : +
+
+
+
+
+
+
+
+ Normal : +
+
+
+
+
+
+
+
+
+ High : +
+
+
+
+
+
+
+
+
+ Very High : +
+
+
+
+
+
+
+
+
+

TICKET STATUS

+
+
+ +
+
+
+
+
+

Team - Tickets Count Ratio

+
+
+ +
+
+
+
+
+

ISSUE

+
+ + + + + + + + + + + + + + +
Customer NameTicket Assigned toSubjectPriority
+
+
+
+
+
+ diff --git a/odoo_website_helpdesk_dashboard/views/dashboard_templates.xml b/odoo_website_helpdesk_dashboard/views/dashboard_templates.xml new file mode 100644 index 000000000..ed51ad7e8 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/views/dashboard_templates.xml @@ -0,0 +1,47 @@ + + + + + + + diff --git a/odoo_website_helpdesk_dashboard/views/menu_item.xml b/odoo_website_helpdesk_dashboard/views/menu_item.xml new file mode 100644 index 000000000..556c68033 --- /dev/null +++ b/odoo_website_helpdesk_dashboard/views/menu_item.xml @@ -0,0 +1,13 @@ + + + + HelpDesk + helpdesk_dashboard + + + +
+
+
+
+
+ +
+
+
+ Community +
+
+
+
+
+
+

+ Website HelpDesk Dashboard

+

Multipurpose Graphical Dashboard for Website HelpDesk module. +

+
+ +
+
+
+
+
+

+ Key Highlights +

+
+
+
+
+
+ +
+
+

+ Classified tickets according to their stages.

+
+
+
+
+
+
+ +
+
+

+ Manage Tickets in the backend easily.

+
+
+
+
+
+
+ +
+
+

+ View status of tickets in the Doughnut Chart

+
+
+
+
+
+
+ +
+
+

+ Number of tickets allotted to each team can be seen in the bar chart.

+
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+

+ View Tickets created from website and also in the draft stage together inside 'New tickets' tile along with the count.

+
+
+
+
+
+
+ +
+
+

+ Manage the tickets in backend by clicking on the 'New tickets' tiles.

+
+
+
+
+
+
+ +
+
+

+ View Tickets that are in progress.

+
+
+
+
+
+
+ +
+
+

+ View and manage tickets that are in the done/completed state.

+
+
+
+
+
+
+ +
+
+

+ Manage helpdesk teams ,also shows the count of teams existing.

+
+
+
+
+
+ +
+
+

+ To show the Ticket Priority.

+
+
+
+
+
+
+ +
+
+

+ With the help of doughnut chart, Analyse the status of tickets.

+
+
+
+
+
+ +
+
+

+ With the help of Bar graph, analyse ratio between the Helpdesk teams and No. of tickets assigned to them.

+
+
+
+
+
+ +
+
+

+ In this view can analyze all tickets and their details.

+
+
+
+
+
+
+
    +
  • + Classified tickets according to their stages. +
  • +
  • + Manage Tickets in the backend easily. +
  • +
  • + View tickets that are created by customers, from website in the received tickets list. +
  • + View status + of tickets in the Doughnut Chart. +
  • + Number of tickets allotted to each team can be seen in the bar chart. +
  • +
+
+
+
+
+
+
Version + 17.0.1.0.0|Released on:22 February 2024 +
+

+ Initial commit for All In One Hide Print + Button

+
+
+
+
+
+
+
+

+ Related Products

+
+
+ +
+
+

+ Our Services

+ +
+
+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Customization

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Support

+
+
+
+
+
+
+ service-icon +
+
+

Hire + Odoo Developer

+
+
+
+
+ +
+
+ service-icon +
+
+

Odoo + Integration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Migration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Consultancy

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Licensing Consultancy

+
+
+
+
+
+
+

+ Our Industries

+ +
+
+
+
+
+
+ +

Trading

+

Easily procure and sell your products

+
+
+
+
+ +

POS

+

Easy configuration and convivial experience

+
+
+
+
+ +

+ Education

+

A platform for educational management

+
+
+
+
+ +

+ Manufacturing

+

Plan, track and schedule your operations

+
+
+
+
+ +

E-commerce + & Website

+

Mobile friendly, awe-inspiring product pages

+
+
+
+
+ +

Service + Management

+

Keep track of services and invoice

+
+
+
+
+ +

+ Restaurant

+

Run your bar or restaurant methodically

+
+
+
+
+ +

Hotel + Management

+

An all-inclusive hotel management application

+
+
+
+
+
+
+

+ Support

+
+
+
+
+
+
+
+ +
+ Need + Help? +

Got + questions or need help? Get in touch.

+
odoo@cybrosys.com +
+
+
+
+
+
+
+
+ +
+ WhatsApp +

Say hi to + us on WhatsApp!

+
+91 + 99456767686 +
+
+
+
+
+
+
+
+